Orbiton - это текстовый редактор и простой IDE с учетом следующих целей:
VT100 )Пожалуйста, отправьте PR, если что -то можно улучшить, чтобы помочь достичь этих целей.
Орбитон может подходить для:
EDITOR=o git commit ).README.md и TODO.mdEDITOR=o visudo и имеет встроенный поддержку для фирменных файлов форматирования /etc/fstab .ctrl-g чтобы увидеть количество слов). Скриншот приложения VTE GUI (который можно найти в каталоге gtk3 ), запуская редактор o :

Пройдя через инструкции по сборке программы ржавчины, введя режим отладки в меню ctrl-o , а затем шагая с ctrl-n :

Редактирование исходного файла C в og с использованием темы «синтезатора»:

Есть также легкие темы:


| Орбитон |
|---|
С GO 1.21, разработка версия o может быть установлена так:
go install github.com/xyproto/orbiton/v2@latest && mv -i ~/go/bin/orbiton ~/go/bin/o
Отрегулируйте флаги mv и путь ~/go/bin по мере необходимости. Возможно, в будущем go install иметь флаг -o .
В качестве альтернативы, загрузите и установите версию релиза. Например, для Raspberry Pi 2, 3 или 4 запуска Linux:
curl -sL 'https://github.com/xyproto/orbiton/releases/download/v2.68.6/orbiton-2.68.6-linux_armv7_static.tar.xz' | tar JxC /tmp && sudo install -Dm755 /tmp/orbiton-2.68.6-linux_armv7_static/o /usr/bin/o && sudo install -Dm644 /tmp/orbiton-2.68.6-linux_armv7_static/o.1.gz /usr/share/man/man1/o.1.gz
o в качестве исполняемого редактора по умолчанию для gitЧтобы установить:
git config --global core.editor o
Чтобы не отдать:
git config --global --unset core.editor
Установив переменную среды MANPAGER , можно использовать o для просмотра страниц Man:
export MANPAGER=o
Альтернатива просмотру страниц MAN в o - это меньше: less :
export MANPAGER='less -s -M +Gg'
o на OpenSuse Установите o вручную, пока не появится пакет OpenSuse:
git clone https://github.com/xyproto/orbiton
cd orbiton
make && sudo make install
Следующее не требуется строго, но оно устанавливает все, чтобы в полной мере использовать o :
Добавьте это в ~/.alias :
alias o=/usr/bin/o
Добавьте это в ~/.profile :
export MANPAGER=/usr/bin/o
export EDITOR=/usr/bin/o
Войдите и снова, чтобы активировать изменения.
Эти функции уникальны для o , насколько мне известно:
ctrl-v один раз, чтобы вставить одну линию, нажмите ctrl-v еще раз, чтобы вставить остальные.ctrl-c , чтобы скопировать одну строку, нажмите ctrl-c снова, чтобы скопировать блок строк (до пустой строки).ctrl-r . Когда портал открыт, копируйте строки по файлам (или в одном и том же файле) с ctrl-v .ctrl-space и кодом формата с ctrl-w , для широкого спектра языков программирования.ctrl-w или ctrl-r , когда ведется интерактивный сеанс GIT Rebase.ctrl-l . Либо введите номер, чтобы прыгнуть на линию, либо просто нажмите return (или t ), чтобы прыгнуть на вершину. Нажмите ctrl-l и return снова (или b ), чтобы прыгнуть в нижнюю часть. Нажмите c , чтобы прыгнуть в центр.ctrl-l , также возможно, что прыгнет до процента (примерно 50% ) или фракции (примерно 0.5 или .5 ). Также можно перейти на одну из выделенных букв.main. Файл, который не существует, но main.cpp и main.o действительно существует, затем будет открыт main.cpp .ctrl-f , введя текст и нажатие return . Замените, нажав tab вместо return , затем введите текст замены и нажмите return . Также поддерживается поиск рун Unicode на форме u+0000 .iferr на одну строку в программе Go или Odin и нажмите return , чтобы вставить подходящее if err != nil { return ... }ctrl-t когда курсор находится на таблице. Это лучше всего подходит для таблиц, которые не слишком широкие.ctrl-w .if , for и while , когда возврат нажимается.ctrl-f дважды ищет слово под курсором."Hello, World" во многих популярных языках программирования, просто нажав на ctrl-space .o main.c , нажав ctrl-w , а затем двойное ctrl-space ..png , .jpg , .jpeg , .gif , .ico , .bmp или .webp изображения непосредственно в терминале (используя масштабированную версию и до 16 цветов).-p , за которым следует имя файла, можно использовать для вставки буфера обмена новым файлом, вместо редактирования файла.ctrl-t может прыгать между заголовком C ++ и исходным файлом при редактировании кода C ++.ctrl-t показывает редактор таблицы Markdown, при редактировании Markdown, а курсор находится в таблице разметки.vim и emacs , для небольших файлов.pandoc .alacritty , konsole , st , urxvt , xfce4-terminal , xterm и zutty .NO_COLOR может быть настроена на отключение всех цветов.ctrl-a и ctrl-e может потребоваться использовать вместо Home и End . И для просмотра вверх и вниз может использоваться ctrl-n и ctrl-p .go или gccgo ./dev/tty доступен.xclip для X, wl-clipboard для Wayland или pbcopy для MacOS необходимо установить для доступа к системному обмену.+ или : префиксом.COMMIT_EDITMSG , внешний вид и ощущение будет скорректировано для сообщений GIT Commit.UTF-8 , но некоторые руны могут отображаться неправильно.n ).rn ) в концовок линии Unix (просто n ), когда это возможно.0xc2 0xa0 ) на обычное пространство ( 0x20 ), когда это возможно.0xcc 0x88 ) обычной тилдой ( ~ ), когда это возможно.0xcd 0xbe ) обычным полуколоном ( ; ), когда это возможно.git rebase -i , то ctrl-w или ctrl-r пробудит ключевые слова для текущей строки ( fixup , drop , edit и т. Д.).r (или имеет символическую ссылку с этим именем), тема по умолчанию будет красной/черной.l (или имеет символическую ссылку с этим именем), тема по умолчанию будет подходящей для легких фонов.s (или имеет символическую ссылку с этим именем), тема по умолчанию будет тема «синтезист».o filename.md , дважды нажмите ctrl-space и уходите с ctrl-q .ctrl-space или ctrl-t чтобы переключить галочку в полях - [ ] TODO item в Markdown..gz .ctrl-w .ctrl-f , а затем t для поиска опечатки, ctrl-n для следующего матча, а затем ctrl-a , чтобы добавить его и ctrl-i , чтобы игнорировать его).ctrl-l . tmux и изменение размера окна эмулятора терминала могут вызвать проблемы с рендерингом текста. Попробуйте нажать esc , чтобы перерисовать текст, или ctrl-f чтобы найти текст. Установка TERM может помочь.o занят выполнением операции, нажатие ctrl-s может заблокировать терминал. Некоторые терминальные эмуляторы, такие как konsole , могут быть настроены для отключения этого поведения. Нажмите ctrl-q , чтобы снова разблокировать терминал (вместе с неудачным риском бросить o ). Чтобы обойти эту проблему, меню ctrl-o может быть использовано вместо этого для сохранения и ухода.mosh может вызвать проблемы рендеринга текста (как в nvim , так и o ).cmd-v , cmd-x и cmd-c на MacOS работает только при использовании фронта og GUI/VTE. Для o , ctrl-v , ctrl-x и ctrl-c можно использовать вместо этого.Есть довольно мало горячих клавиш, чтобы помнить:
ctrl-s - Сохранить.ctrl-q - уйти.ctrl-r - Откройте или закрывайте портал. Текст может быть вставлен с портала в другой (или тот же) файл с ctrl-v . Для режима «GIT Interactive Rebase» ( git rebase -i ) это будет циклически циклически циклически ключевые слова Rebase.ctrl-a - перейдите к началу текста, затем началу строки, а затем к предыдущей строке.ctrl-e - перейдите к концу линии, а затем к следующей строкеctrl-n - Прокрутите 10 строк или перейдите к следующему матчу, если поиск активен. Вставьте столбец, когда в редакторе таблицы Markdown.ctrl-p - Прокрутите 10 строк или перейдите к предыдущему матчу, если поиск активен. Удалите пустой столбец, когда в редакторе таблицы Markdown.ctrl-k - удалить символы до конца строки, затем удалите строку.ctrl-_ Прыжок к подходящему скобку или кронштейну, если курсор находится на одном, в противном случае вставьте символ, вводя в 2-буквенную диграф.ctrl-d - Удалить один символ.ctrl-t - для C и C ++: Прыжок между текущим заголовком и исходным файлом. Для Agda и Ivy вставьте символ. Для Markdown: переключить флажки или запустите редактор таблиц, если курсор находится над таблицей. В остальное: запишите и воспроизводите ключи. Нажмите Esc , чтобы очистить текущий макрос.ctrl-o - Откройте меню команд с действиями, которые можно выполнить.ctrl-x - вырезать текущую линию. Нажмите дважды, чтобы разрезать блок текста (к следующей пустой линии).ctrl-c - Скопируйте одну строку. Нажмите дважды, чтобы скопировать блок текста.ctrl-v - вставьте одну отделанную линию. Нажмите дважды, чтобы вставить несколько неопределенных линий.ctrl-space - программа сборки, рендеринг в PDF или экспорт на страницу человека (см. Таблицу ниже). Для Markdown: переключить флажки или двойной нажмите на экспорт в HTML.ctrl-j - соединения линии (или прыгайте в закладку, если установлено).ctrl-u -UNDO ( ctrl-z также возможен, но может фонарю применение).ctrl-l - Прыжок к определенному номеру или проценту. Нажмите return , чтобы прыгнуть на вершину. Если вверху нажмите « return , чтобы прыгнуть внизу. Нажмите одну из выделенных букв на экране, чтобы прыгнуть в это место.ctrl-f - Поиск строки. Поиск оборачивается вокруг и чувствителен к корпусу. Нажмите tab вместо return к поиску и замените. Чтобы найти опечатки, найдите букву t , затем нажмите ctrl-n для следующего слова, ctrl-a чтобы добавить ее или ctrl-i , чтобы игнорировать его.ctrl-b -прыгайте назад после прыжка к определению с ctrl-g . Переключите закладку для текущей линии, или если установлено: перейдите к закладке на другой линии.ctrl-w - Форматируйте текущий файл (см. Таблицу ниже), или Cycle Git Rebase Keywors. Для уценки отформатируйте таблицу под курсором.ctrl-g - Прыжок к определению, для некоторых языков программирования (экспериментальная особенность) или перевернуть строку состояния.ctrl- - Комментарий в блоке кода или выхода.ctrl-~ - Прыжок в подходящую скобку или кронштейн.esc - все перерисовано и очистите последний поиск. ctrl-space , чтобы построить или экспортировать текущий файл.ctrl-w , чтобы форматировать текущий файл, самоуверенно. Если текущий файл пуст, «Привет, мир!» Шаблон будет вставлен для некоторых расширений файлов.$(o -l) , чтобы получить более подробную информацию. o -l можно использовать для предварительного просмотра команды.| Язык программирования | Расширения файлов | Прыгните к ошибке | Команда сборки | Формат команда |
|---|---|---|---|---|
| Ада | .adb , .gpr , .ads , .ada | Пари | Пари | Пари |
| Агда | .agda | Да | agda -c $filename | N/a |
| Алгол 68 | .a68 | Пари | a68g --compile $filename | Пари |
| Сборка | .asm , .s , .S , .inc | Да | yasm -f elf64 -o $output.o $filename | N/a |
| В | .c , .h | Да | gcc $filename -o $output | clang-format -i --style=WebKit $filename |
| C ++ | .cpp , .cc , .cxx , .h , .hpp , .h++ , .c++ | Да | g++ $filename -o $output | clang-format -i --style=WebKit $filename |
| C# | .cs | Да | dotnet build $filename | astyle --mode=cs $filename |
| C3 | .c3 | Да | c3c compile -o $output $filename | c3fmt --rewrite $filename |
| Клоджюр | .clj , .cljs , .clojure | Пари | lein compile $filename | Пари |
| Кристалл | .cr | Да | crystal build $filename --release | crystal tool format $filename |
| CSS | .css | Пари | Нет | prettier --tab-width 2 -w $filename |
| Дюймовый | .d | Да | dmd $filename -of$output | Пари |
| Дрэк | .dart | Да | dart compile exe --output $output $filename | dart format $filename |
| Эрланг | .erl | Да | erlc $filename | Пари |
| FORTRAN77, FORTRAN90 | .f , .f90 | Да | gfortran -o $output $filename | Пари |
| Гранат | .gt | Пари | garnetc -o $output $filename | Пари |
| GLSL | .glsl , .vert , .frag | Пари | glslangValidator -V -o $output $filename | Пари |
| Идти | .go | Да | go build $filename | goimports -w $filename |
| заяц | .ha | Да | hare build $filename | N/a |
| Хаскелл | .hs | Да | ghc -dynamic $filename | brittany --write-mode=inplace $filename |
| HTML | .html | Пари | Нет | tidy -m $filename |
| Плющ | .ivy | Пари | Пари | N/a |
| Ява | .java | Да | javac + jar , см. Подробности ниже | google-java-format -a -i $filename |
| JavaScript | .js | Пари | Нет | prettier --tab-width 4 -w $filename |
| Jakt | .jakt | Пари | jakt $filename | Пари |
| Только | justfile ,. .justfile | Нет | Нет | just --unstable --fmt -f $filename |
| Котлин | .kt , .kts | Да | kotlinc $filename -include-runtime -d $output.jar | ktlint -F $filename |
| Уроженец Котлина | .kt , .kts | Да | kotlinc-native -nowarn -opt -Xallocator=mimalloc -produce program -linker-option --as-needed $filename -o $output | ktlint -F $filename |
| Луа | .lua | Да | luac -o $output.luac $filename | lua-format -i --no-keep-simple-function-one-line --column-limit=120 --indent-width=2 --no-use-tab $filename |
| Отметка | .md | Пари | Нет | prettier --write $filename |
| Ним | .nim | Пари | nim c -o:$output $filename | Пари |
| Объектив-c | .m | Да | clang $filename -o $output | clang-format -i --style=WebKit $filename |
| Один | .odin | Да | odin build $filename | N/a |
| Объективный Паскаль | .pas , .pp , .lpr | Да | fpc $filename | Пари |
| Ocaml | .ml | Пари | Нет | ocamlformat $filename |
| Перв | .pl | Да | perl $filename | /usr/bin/vendor_perl/perltidy -se -b -i=2 -ole=unix -bt=2 -pt=2 -sbt=2 -ce $filename |
| Питон | .py | Да | python -m py_compile $filename | black $filename |
| Рубин | .rb | Нет | Нет | rubocop -A $filename |
| Ржавчина (с грузом.toml) | .rs | Да | cargo build | rustfmt $filename |
| Ржавчина | .rs | Да | rustc $filename | rustfmt $filename |
| Скала | .scala | Да | scalac $filename && jar cfe $output MainClass *.class | scalafmt $filename |
| Оболочка | .sh , PKGBUILD , APKBUILD | Пари | makepkg | shfmt -s -w -i 2 -bn -ci -sr -kp $filename |
| Стандартный Ml | .sml , .fun , .mlb , .cm | Да | mlton $filename | Пари |
| Быстрый | .swift | Пари | Пари | Пари |
| Машинопись | .ts | Пари | Нет | prettier --tab-width 4 -w $filename |
| V. | .v | Да | v build $filename | v fmt $filename |
| XML | .xml | Пари | Нет | tidy -w 80 -q -i -utf8 --show-errors 0 --show-warnings no --tidy-mark no -xml -m $filename |
| Zig | .zig | Да | zig build-exe $filename | zig fmt $filename |
/etc/fstab , JSON и HTML также поддерживаются и могут быть отформатированы с помощью ctrl-w .
o Попробую перейти к месту, где ошибка, и в противном случае отображается Success .ctrl-w будет Word обернуть строки до длины 99.kotlinc-native недоступна, вместо этого будет использоваться эта команда сборки: kotlinc $filename -include-runtime -d $name.jarCXX можно загрузить здесь: страница проекта GitHub для CXX.
| Тип файла | Расширения файлов | Команда строительства или экспорта |
|---|---|---|
| Asciidoc | .adoc | asciidoctor -b manpage (пишет на out.1 ) |
| SCDOC | .scd , .scdoc | scdoc (пишет на out.1 . |
| Отметка | .md | pandoc -N --toc -V geometry:a4paper (пишет в $filename.pdf ) |
Это совершенно новая функция, которая нуждается в большем количестве тестирования.
gdb установлен, можно выбрать «режим отладки» из меню ctrl-o , а затем создать и пройти программу с ctrl-space или установить точку останова с ctrl-b и продолжить с помощью ctrl-space .Находясь в редакторе таблицы Markdown:
tab можно использовать для перейти в следующую ячейку или вставить новые ячейки, если достигнута последняя ячейка.return может быть использован для прыжка в пустую ячейку внизу или вставить новую строку ниже.backspace может использоваться для удаления букв, но также для удаления текущей строки, если она пуста.ctrl-n можно использовать для вставки нового столбца вправо.ctrl-d может использоваться для удаления текущего столбца (если все ячейки в столбце пусты).esc или ctrl-t могут использоваться для закрытия редактора таблицы Markdown.ctrl-s можно использовать для сохранения. Темы могут быть выбраны с меню ctrl-o . В меню темы также перечислены названия тем, которые могут быть указаны в переменной среды O_THEME .
Переменная среда O_THEME является исключением из утверждения о том, что o не является конфигурацией, но она совершенно необязательно.
Для использования IE. Синтезированная тема, может быть использована Symlink the /usr/bin/sw to /usr/bin/o , или это можно добавить в ~/.profile :
export O_THEME=synthwave
æ , просто нажмите ctrl-_ и введите ae . Чтобы вставить µ , введите в My . git clone https://github.com/xyproto/orbiton
cd orbiton
make && sudo make install
И необязательно:
make gui && sudo make gui-install
Также можно установить символические ссылки, которые предлагаются дальше в этом документе.
Установите зависимости (используйте doas если это необходимо):
add_pkg git gmake go vte3
Создайте как редактор o , так и Gui Frontend og :
gmake CXX="clang++ -w" o og
Установите оба исполняемых файла, страницу человека, значок и файл ярлыка настольных компьютеров (используйте doas , если необходимо,):
PREFIX=/usr/local gmake install og-install
Просто строительство и установка o также работает:
gmake
doas gmake install
Также можно установить символические ссылки, которые предлагаются дальше в этом документе.
C ++
ctrl-space необходимо установить cxx .ctrl-w должен быть установлен clang-format .Идти
ctrl-space должен быть установлен компилятор go .ctrl-w должен быть установлен goimports .Zig
zig .V.
vРжавчина
ctrl-space должен существовать Cargo.toml , и cargo должен быть установлен.ctrl-w должен быть установлен rustfmt .Хаскелл
ctrl-space должен быть установлен компилятор ghc .ctrl-w должна быть установлена brittany .Питон
ctrl-space только проверяет синтаксис, без выполнения. Это только требует, чтобы python был доступен.ctrl-w должен быть установлен black .Кристалл
crystal команда.Котлин
ctrl-space должен быть установлен kotlinc . Файл .jar создается, если компиляция преуспела.ctrl-w должен быть установлен ktlint .Ява
ctrl-space должны быть установлены javac и jar . Файл .jar создается, если компиляция преуспела.ctrl-w должен быть установлен google-java-format .Скала
ctrl-space должны быть установлены scalac и jar . Файл .jar создается, если компиляция преуспела.java -jar main.jar . Используйте scalac -d main.jar MyFile.scala если вы хотите создать банку, которая может быть выполнена с помощью scala main.jar .ctrl-w должен быть установлен scalafmt .Дюймовый
ctrl-space должен быть доступен gdc .Json
FSTAB
fstab (обычно /etc/fstab )-это встроенная функция. Просто нажмите ctrl-w . Если вам нужна отдельная утилита, доступен fstabfmt .JavaScript
prettier должен быть установлен. Поскольку kotlinc $filename -include-runtime -d строит в .jar Идея состоит в том, чтобы легко собрать одну или небольшую коллекцию файлов .java , где один из файлов имеет main функцию.
Если вы знаете о более простом способе построить файл .jar из *.java , не используя что -то вроде Gradle, пожалуйста, дайте мне знать, отправив запрос на привлечение. Это довольно многословный ...
javaFiles= $( find . -type f -name ' *.java ' )
for f in $javaFiles ; do
grep -q ' static void main ' " $f " && mainJavaFile= " $f "
done
className= $( grep -oP ' (?<=class )[A-Z]+[a-z,A-Z,0-9]* ' " $mainJavaFile " | head -1 )
packageName= $( grep -oP ' (?<=package )[a-z,A-Z,0-9,.]* ' " $mainJavaFile " | head -1 )
if [[ $packageName != " " ]] ; then
packageName= " $packageName . "
fi
mkdir -p _o_build/META-INF
javac -d _o_build $javaFiles
cd _o_build
echo " Main-Class: $packageName$className " > META-INF/MANIFEST.MF
classFiles= $( find . -type f -name ' *.class ' )
jar cmf META-INF/MANIFEST.MF ../main.jar $classFiles
cd ..
rm -rf _o_build Для Scala это код, который используется для создания файла main.jar , который можно запускать непосредственно с java -jar main.jar :
#! /bin/sh
scalaFiles= $( find . -type f -name ' *.scala ' )
for f in $scalaFiles ; do
grep -q ' def main ' " $f " && mainScalaFile= " $f "
grep -q ' extends App ' " $f " && mainScalaFile= " $f "
done
objectName= $( grep -oP ' (?<=object )[A-Z]+[a-z,A-Z,0-9]* ' " $mainScalaFile " | head -1 ) ;
packageName= $( grep -oP ' (?<=package )[a-z,A-Z,0-9,.]* ' " $mainScalaFile " | head -1 ) ;
if [[ $packageName != " " ]] ; then
packageName= " $packageName . "
fi
mkdir -p _o_build/META-INF
scalac -d _o_build $scalaFiles
cd _o_build
echo -e " Main-Class: $packageName$objectName nClass-Path: /usr/share/scala/lib/scala-library.jar " > META-INF/MANIFEST.MF
classFiles= $( find . -type f -name ' *.class ' )
jar cmf META-INF/MANIFEST.MF ../main.jar $classFiles
cd ..
rm -rf _o_build/usr/share/scala/lib/scala-library.jar не найдено scalac -d run_with_scala.jar вместо этого используется.scala-library.jar не был найден, то полученный файл jar потребуется запуск scala . ctrl-t поднимает меню с подбором специальных символов.
Есть также эти ярлыки:
⊤ , нажав ctrl-t , а затем t .ℕ , нажав ctrl-t , а затем n . При редактировании файлов PKGBUILD можно нажать ctrl-o и выбрать Call Guessica , чтобы обновить поля pkgver= и source= путем комбинации догадок и онлайн-поиска. Эта функциональность зависит от установки утилиты обновления пакета Pageica, и будет работать только для некоторых файлов PKGBUILD .
a68g - для составления кода Algol 68agda - для составления кода AGDAasciidoctor - для написания страниц управленияastyle - для форматирования C# кодblack - для форматирования кода Pythonbrittany - для форматирования кода Haskellcargo - для составления ржавчиныclang - для форматирования кода C ++ с clang-formatclojure - для составления Clojurecrystal - для компиляции Crystalcxx - для составления C ++fpc - для составления объекта Pascalg++ - для компиляции C ++ кодаgdc - для составления кода Dghc - для составления кода Haskellgo - для компиляции код GOgo-tools - для форматирования кода GO и импорта обработки с помощью goimportsgoogle-java-format -для форматирования кода Javajad - декомпилирование .class файлы на лету при открытии их с ojava-environment - Для составления кода Java и создания файлов .jar с javac и jarkotlin - для составления Kotlinktlint - для форматирования кода Kotlinlua - для составления Lua к Bytecodelua-format - для форматирования кода LUAmlton - для составления стандартного MLmono - для составления C# кодаocaml - для компиляции и форматирования кода OCAMLodin - для составления Odinpandoc - для экспорта разметки в PDFprettier - для форматирования JavaScript, TypeScript и CSSpython - для составления Python в Bytecoderustc - для составления ржавчиныrustfmt - для форматирования ржавчиныscala - для составления Scalasdoc - для написания лиц Man Pagestidy - для форматирования XMLv - для компиляции и форматирования V кодаzig - для компиляции и форматирования Zig Code o исполняемый файл составляет 1,5 м при создании с помощью GCC 12 (для 64-битного Linux) и сжата с помощью upx . Один из способов построения с gccgo и upx (в каталоге v2 ):
go build -mod=vendor -gccgoflags '-Os -s' -o o && upx --best --lzma o
Если выполняемый o построен с go , размер может быть 8,7 м или всего 2,8 м при упаковке upx :
go build -mod=vendor -ldflags='-s -w' -trimpath -o o && upx --best --lzma o
Эти четыре способа открытия file.txt в строке 7 поддерживаются:
o file.txt 7o file.txt +7o file.txt:7o file.txt+7 Это также означает, что имена файлов, содержащие + или : а затем, за которым следует число, не поддерживаются.
-f можно использовать для открытия файла, независимо от того, есть ли какие -либо блокировки. Его также можно использовать для перезаписи файлов вместе с -p .-c FILENAME может использоваться для копирования содержимого данного файла в буфер обмена, а затем выйти.-p FILENAME может использоваться для вставки содержимого буфера обмена в заданное FILENAME (если его еще не существует), а затем выйти.-n можно использовать, чтобы избежать написания файлов блокировки, создания файлов, истории местоположения, истории поиска и игры в игру $XDG_CACHE_DIR/cache/o или ~/.cache/o . Не рекомендуется.-m может использоваться для открытия файла в качестве только для чтения, но следите за его изменением.--help можно использовать для быстрого обзора поддерживаемых связей с ключами.--version напечатает текущую версию, а затем выйдет. При загрузке файлов, которые являются большими или с медленного диска, появится анимированный прядильщик. Операция загрузки может быть прервана путем нажатия esc , q или ctrl-q .

Эта функция оболочки работает в zsh и bash и может быть полезна как для поиска, так и для открытия файла на заданном номере (лучше всего работает, если есть только один соответствующий файл, если нет, он откроет несколько файлов подряд):
fo () { find . -type f -wholename " * $1 " -exec o {} $2 ; ; } Если найдено слишком много файлов, можно перестать открывать их, выбрав Stop parent and quit without saving в меню ctrl-o , которое покинет редактор, а также убьет процесс find родителей.
Пример использования:
fo somefile.cpp 123 При использовании pandoc для экспорта с отметки в PDF:
PAPERSIZE установлена на IE. a4 или letter , это будет уважаться при экспорте от уценки в PDF с использованием Pandoc, в прессе ctrl-space .--pdf-engine=xelatex и --listings используются, поэтому xelatex и пакет listings должны быть доступны. Стандартная установка латекса и pandoc должна обеспечить оба.Render to PDF with pandoc будет отображаться в меню ctrl-o только при редактировании файла Markdown и pandoc . ctrl-o чтобы начать глупую маленькую игру о кормлении существ с гранул, прежде чем их съедят. В качестве альтернативы, создайте символическую ссылку для того, чтобы запустить ее напрямую, т.е.: ln -sf /usr/bin/o /usr/bin/feedgame .right, down, left или left, down, right в быстрой последовательности, а затем либо down чтобы сохранить или up , чтобы сохранить и уйти. Единственная цель этого необычного ярлыка - помочь избежать болезненных эмац мизинцев. o - Для терминальных эмуляторов, которые поддерживают как минимум VT100og - для GUI VTE (необязательно) # For starting o with the Light theme
ln -sf /usr/bin/o /usr/bin/li
# For starting o with the Red/Black theme
ln -sf /usr/bin/o /usr/bin/redblack
# For starting o with the Synthwave theme
ln -sf /usr/bin/o /usr/bin/sw
# For starting o with the Blue Edit theme
ln -sf /usr/bin/o /usr/bin/edi
# For starting o with the Light VS theme
ln -sf /usr/bin/o /usr/bin/vs # For starting the GUI version of o with the Light theme
ln -sf /usr/bin/og /usr/bin/lig
# For starting the GUI version of o with the Red/Black theme
ln -sf /usr/bin/og /usr/bin/redblackg
# For starting the GUI version of o with the Synthwave theme
ln -sf /usr/bin/og /usr/bin/swg
# For starting the GUI version of o with the Blue Edit theme
ln -sf /usr/bin/og /usr/bin/edg
# For starting the GUI version of o with the Light VS theme
ln -sf /usr/bin/og /usr/bin/vgogСтроить:
make gui
Установите (используйте sudo или doas , при необходимости):
make gui-install
ctrl-f для поиска, а затем введите t и нажмите «Возвращение», чтобы найти следующее t ypo.ctrl-a в (временно) добавить его в словарь или ctrl-i , чтобы (временно) игнорировать его.o запускается символикой или исполняемой именованной именем с именем nan или nano ), ctrl-t ищет следующую опечатку.Встроенный анализ орфографии использует список слов из этого проекта, который лицензирован по этой лицензии MIT:
MIT License, Copyright (c) Sindre Sorhus <[email protected]> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Flow control в настройках профиля, чтобы убедиться, что ctrl-s никогда не заморозит терминал.