Ultra small, strong will.

Enjoy edit code with an ultra small code editor.
More than just a code editor, but also a file manager, universal document viewer and multimedia player. In fact, emphasise the app is also a highly efficient file manager is never too much. Since 2012, the builtin high performance source code parsing engine is used to parse almost all common programming language and document formats for syntax highlighting and symbol indexing, the app was originally developed as a code editor for iPad for code review, and later, iPhone also supported, while reading code and viewing files on an iPhone is certainly convenient and useful, but editing text file on iPad is even better. Today's iCodeEditor is almost brand new after years of continuous development, reliable, small and fast. Large software is considered harmful, this small code editor also follows the design philosophy, making software as small as possible, pursue terseness and performance, all operations including source code parsing and autocompletion are locally executing except file download and upload requires an internet connection, making the app independent of internet is another none-mentioned key feature.

Fav Features


Function buttons of the Text Editor

The top function buttons, from left to right:
a. Dismiss keyboard.
b. Basic operations.
c. Basic operations second part.
d. Advanced operations.

Basic Operations:
* Go to line: input a big number then goto end of the file.
* Append New Line: append a new line at the end of the file.
* Parse: Parse current file or show parsed result.
* Diff: run diff operation to show coloured changes.
* Preview: show preview in builtin web browser.
* File Changes: list saved changes.


Advanced Operations:
* Character Info: show unicode codepoints and utf-8 byte sequences.
* View Unicode String: convert unicode representation "\u5e73\u975c ..." to readble literals.
* Spaces to Tabs: some file mandatorily require tabs instead of spaces, e.g. Makefile.
* Normalise Invisible Characters: replace all invisible characters with whitespace except line breaks.
* Remove Tail Spaces: replace multiple spaces with one and trim tail spaces in each line.
* Run: run Ruby or Lua code.
* Run Result: show result of above run.


The bottom function buttons, from left to right:
a. Search current file or run searching in a selected folder.
b. Fast switch between multiple searched results.
b. Undo.
c. Redo.

Functions


Misc. Functions

  1. Append new file types to view as text file:
    Please put a file named as Extensions.txt under "Local Storage", one line one extension name, line starts with '#' is comment.
  2. Append new file types to view in browser by default:
    Please put a file named as Browser.txt under "Local Storage", one line one extension name, line starts with '#' is comment.
  3. Edit text at the end of a file, select operation "Append New Line" and tap enter key several times.
  4. Boilerplate.txt is used to ignore file and folders, under the root folder, duplicate the file and name it as iCodeEditor_Search.txt to speed up big folder searching.

Show invisible characters with self-defined characters
Please carefully edit the file invisible.json, the key is hex value of the invisible character, the value is the hex value of the unicode codepoint of the replacement for display.

Advanced Searching

1. Searching current file or a selected folder with content matching.
Setup searching options:
a. matching type: prefix, suffix, contains, or equals the string.
b. the input string can be a Perl regular expression.
c. freely combine file extensions to include and/or exclude particular file types.
d. duplicate Boilerplate.txt, rename it as iCodeEditor_Search.txt, and put it under the big folder, ignore folder and special files.

"Maximum Matches" and "Maximum File Size" is used to limit searching and filter big files.

2. Searching files without content matching.
Select task type "file name and/or extension", input file name in "Search String" text field with or without extension, and setup other options:
a. matching type: mathcing prefix, suffix, contains, or equals the string.
b. file name can be a Perl regular expression.
c. setup file extension names to filter including and/or excluding file types.

Please try again if no result searched, "Replace Operation" is based on searched result, the app will replace each match with input replacement at the second step after searching.

Connection

1. Directly View Files on Mac
Run uWeb Server on your Mac, make sure the server DOES NOT run as WebDAV server, on iOS device:
a. Settings → Safari → "Request Desktop Website" → "All Websites".
b. Open Safari, input "192.168.2.100:7000" → "go".

2. Download Files from Server
a. Please pay attention to the port number for "Server Storage" have a proper value and the server IP is accessible.
b. (Optional) please ensure the router and/or firewall settings allows the "Server Storage" can be accessed from outside on the port. When transfer files with local Wi-Fi in normal usage scenarios, please ignore router or firewall settings.
c. Please re-start your device if the app can't connect to server, this app works well when paired with uWeb Server, please make sure the server run as WebDAV server and the connection can be tested with Safari.

Fast Import Project

Main menu → "Camera" button, select the project folder, click "Open" to import it.

Filter File List

a. Select "Filter File List" from operation list, input a file extension or comma separated multiple extension names. The filtered list will be destroyed when click any of the bottom buttons.
b. Copy the filter file Boilerplate.txt to the folder, edit rules in it and reload the folder again.

Fast Comment Code Block

Select the code block, and then select "Toggle Comment" from the operation list to comment or uncomment it.

Fast File Backup

When pair works with uWeb Server, user can directly transfer photo and video from iOS devices to external hard disk. Also can be used as a file archiver, compress folder or file and uncompress archived files.

Compare Two File

Make a file selected, back and then select "Compare" from the operation list, navigate with folder selection and then choose the target file which will be used for the comparison, click "OK" button, optionally add comments in the coloured output and save as PDF file.

Parallel Edit Mode

1. Open "Server Storage".
2. Open parallel edit mode.
a. Select "Open Selection" from the operation list on left side panel.
b. Select "Open File" from the operation list on left side panel, select a file.
3. Switch file in the text editor, choose the operation "Open File" from the operation list of the editor.

Syntax Highlighting by Shebang or File Names

1. "shebang.json", insert a line into the first line of a file to enable syntax highlighting, e.g, for meson building files, the sample first line is: #!/usr/bin/env ruby, insert #!/usr/local/bin/cmake as the first line of a file, then it can be detected as CMake file for syntax highlighting.

2. "langfiles.json", each syntax contains a file name list, syntax name is case sensitive and file name must be lower case, e.g, "CMakeLists.txt" will be automatically recognised as CMake files, please edit the file CAREFULLY to support more programming languages.


Edit HTML & Markdown files with instant preview

1. Open "Server Storage".
2. Navigate to the file and select it, choose "Open Selection" from the operation list.


Save Markdown Files

1. Open file in web browser.
a. Please refer above section to open the file in built-in web browser.
b. Open the file in text editor and then select "Preview" from the operation list of the editor.
2. Save Markdown file to html, in the browser, click "Save" button.

Browse Photos

Fast browse pictures by slipping finger.

Syncing Lyrics with Music

Please put the lyrics sheet that has a .lrc extension together with the music file, make sure they're under the same folder and have same file name.

Read Code & Code Review on iPad


Try Again

Please try again for operations: "Advanced Searching", "Parse Current File", "Compare Two File" and "Diff Current File".

Edit As Text File

A. Add file extension in "Extensions.txt" mentioned in previous section.
B. Rename or add extension name "txt" (or extension name of source code file) to the file, rename back or not after editing.

Code Editor on macOS

Lifofinn, aka. LFF, a serious-small and friendly code editor, designedly provides a native scripting language debugging environment for macOS, another code editor developed by me. The app is really powerful, it has a high performance search engine using Perl regular expression and file filters, builtin diff and patch operation, instantly generate coloured file changes with editing actions, and more features beyond people's expect! But unfortunately, people only know to view those feeds, and misleaded by those feeds, it's disgusting. People should have independent thinking to find good stuff by themselves, and quality software should be found by people themselves but not by those prompt feeds, ad video, picture, article and ranks.

Learn Lua Programming

Lua is small, reliable and fast.
Edit and run Lua code instantly(the builtin Lua runner is 5.4.x).
Even something is good, but don't overused, abused.
Crafting software as small as possible!


Learn Ruby Programming

mruby is small, reliable and powerful.
Edit and run Ruby code within the editor, the builtin Ruby runner is mruby version 3.4.0.


Feed Back & Help

Please rate or comment the app to let more people know if you like the editor, and kindly feed back any issue or feature request, any help would be appreciated.