evbogdanov / Acme
Licence: bsd-3-clause
My collection of Acme notes and scripts
Stars: ✭ 191
Programming Languages
shell
77523 projects
Projects that are alternatives of or similar to Acme
Vscode Chrome Debug
Debug your JavaScript code running in Google Chrome from VS Code.
Stars: ✭ 2,126 (+1013.09%)
Mutual labels: editor
Ngx Inline Editor
Native UI Inline-editor Angular (4.0+) component
Stars: ✭ 172 (-9.95%)
Mutual labels: editor
Seashore
easy to use mac osx image editing application for the rest of us
Stars: ✭ 182 (-4.71%)
Mutual labels: editor
Pixel Editor
An online canvas based Pixel Art creation tool for Lospec.com
Stars: ✭ 180 (-5.76%)
Mutual labels: editor
Unityheapexplorer
A Memory Profiler, Debugger and Analyzer for Unity 2019.3 and newer.
Stars: ✭ 179 (-6.28%)
Mutual labels: editor
Zerobranestudio
Lightweight Lua-based IDE for Lua with code completion, syntax highlighting, live coding, remote debugger, and code analyzer; supports Lua 5.1, 5.2, 5.3, 5.4, LuaJIT and other Lua interpreters on Windows, macOS, and Linux
Stars: ✭ 2,255 (+1080.63%)
Mutual labels: editor
Pixel
📷 A composable image editor using Core Image and Metal.
Stars: ✭ 2,495 (+1206.28%)
Mutual labels: editor
Smartblock
intuitive block based wysiwyg editor built with React and ProseMirror
Stars: ✭ 173 (-9.42%)
Mutual labels: editor
Flutter image editor
Flutter plugin, support android/ios.Support crop, flip, rotate, color martix, mix image, add text. merge multi images.
Stars: ✭ 181 (-5.24%)
Mutual labels: editor
Cattaz
Realtime collaborative tool which can run custom applications in a Wiki page
Stars: ✭ 191 (+0%)
Mutual labels: editor
Acme text editor
Acme is a Zen-style text editor.
Using Acme you sacrifice:
- configuration files
- themes
- syntax highlighting
- autocompletion
- specific language support
- your favourite Vim/Emacs/Sublime feature
What you gain is that instead of spending too much time configuring your editor, you will focus on actual working.
The killer feature of Acme is how it integrates into surrounding system. Acme is not trying to be a complete environment by itself. Acme acts as a glue which links together other programs and tools. With Acme the OS becomes your IDE.
Install
macOS
mkdir $HOME/9 && cd $HOME/9
git clone https://github.com/9fans/plan9port/ && cd plan9port
./INSTALL
Debian
sudo apt-get install gcc libx11-dev libxt-dev libxext-dev libfontconfig1-dev
git clone https://github.com/9fans/plan9port $HOME/plan9
cd $HOME/plan9/plan9port
./INSTALL -r $HOME/plan9
Environment setup
export PLAN9="/path/to/plan9port"
export PATH="$PATH:$PLAN9/bin"
Font
Run font server:
fontsrv
In case it's not installed:
cd /path/to/plan9port/src/cmd/fontsrv/
9 mk install
Have a look at all available fonts:
9p ls font
Try one of them:
acme -f /mnt/font/'Droid Sans Mono'/13a/font
Run
I spawn Acme by running a
script.
Scripts
Who is who in bin directory:
-
a
start Acme -
b
create an indented C-like block{ ... }
-
c SYMBOL
/uc SYMBOL
comment/uncomment selection -
commit MESSAGE
commit and push to master -
css
andcssify
transform abbreviations into CSS properties -
f TEXT
find TEXT using The Silver Searcher -
hd SYMBOL
draw a pretty heading -
htm
feed selection to Pug -
html
HTML boilerplate -
i
/ui
indent/unindent selection -
lstrip
remove leading whitespace -
t2s N_SPACES
/s2t N_SPACES
tabs <=> spaces -
upper
/lower
convert selection to uppercase/lowercase
Put these guys in your $PATH.
Random notes
-
Edit =
find out the current line number -
:13
goto 13th line -
:0
goto file beginning -
:$
goto file end -
:1,$
or:,
orEdit 1,$
orEdit ,
select all lines -
:1,5
orEdit 1,5
select lines 1..5 -
Edit , d
clear window -
Edit , < echo hello world
replace window body with some text -
Edit , < erl -man maps
replace window body with erlang manual -
Edit , s/text/TEXT/g
orEdit , | sed 's/text/TEXT/g'
global replace -
$%
or$samfile
current file name -
$winid
current window id -
echo some text | 9p write acme/$winid/body
append to the end of current window - keyboard shortcuts:
-
ctrl-u
delete from cursor to start of line -
ctrl-w
delete word before the cursor -
ctrl-h
delete character before the cursor -
ctrl-a
move cursor to start of the line -
ctrl-e
move cursor to end of the line -
ctrl-i
tab -
ctrl-j
enter -
ctrl-f
filepath autocompletion -
fn-*left arrow*
go home (macOS) -
fn-*right arrow*
go end (macOS)
-
- search with right click:
-
:+/foobar
,:/foobar
and justfoobar
search forward -
:-/foobar
search backwards
-
- press
esc
to select the last typed text - press
esc
again to delete any selected text -
Font
switch between fonts -
:/^hel
regexp match: lines starting with 'hel' -
:/lo\n/
regexp match: lines ending with 'lo' -
:/^b/,/^e/
regexp match: lines between starting with 'b' and starting with 'e' -
Dump
write the state of acme to the file -
Load
restore from the dump -
Edit , > python
pipe window body through python interpreter - three-finger tap emulates middle click (macOS)
Sam commands
-
Edit +/hello
search 'hello' forward -
Edit -/hello
search 'hello' backward -
Edit , > wc -l
count lines in file -
Edit , | sort
sort lines -
Edit 3,5p
print lines 3..5 in new window -
Edit 3,5 | upper
lines 3..5 upper cased -
Edit 3,5 s/HE/he/g
replace on 3..5 lines only -
Edit 2 d
delete 2nd line -
Edit 2 c/new
change 2nd line -
Edit 2 a/new
append text after 2nd line -
Edit 2 i/new
insert text before 2nd line -
Edit 2 < date
replace 2nd line with the output of date -
Edit ,x/^TODAY$/ < date
replace matching lines with the output of date -
Edit ,x/Plan9/ |tr a-z A-Z
replace all instances of Plan9 with upper case -
Edit 3,5x/^/ a/ /
indent lines 3..5 with 1 tab
You can do amazing things with Sam commands:
Edit ,x/Acme/ {
i/I love
c/Sam
a/ editor!
}
Cut / Copy selection to a file
- select some text
- cut:
| sed '' > file.txt
- copy:
> sed '' > file.txt
- pipe selection to a file:
> awk '{ print(toupper($1)) }' | sort | nl > file.txt
Games!
Other Plan9 goodies
-
win
start shell in a new window -
page FILE
view graphics files -
web URL
open url in your browser
Wanna use bash inside win?
Put in your .bashrc
## If inside Acme...
if [ "$winid" ]; then
## ... then patch the `cd` command
_cd () {
\cd "[email protected]" && awd
}
alias cd=_cd
fi
Resources
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].