summaryrefslogtreecommitdiff
path: root/README.adoc
diff options
context:
space:
mode:
authorPřemysl Janouch <p.janouch@gmail.com>2017-06-29 02:50:39 +0200
committerPřemysl Janouch <p.janouch@gmail.com>2017-06-29 04:32:37 +0200
commita55fc17f31c19361c8cd014068c3753b0c28853f (patch)
tree9cd617002d0b33b25bd880576cd4b011157f853a /README.adoc
downloadsdn-a55fc17f31c19361c8cd014068c3753b0c28853f.tar.gz
sdn-a55fc17f31c19361c8cd014068c3753b0c28853f.tar.xz
sdn-a55fc17f31c19361c8cd014068c3753b0c28853f.zip
Initial commit
Diffstat (limited to 'README.adoc')
-rw-r--r--README.adoc75
1 files changed, 75 insertions, 0 deletions
diff --git a/README.adoc b/README.adoc
new file mode 100644
index 0000000..e0c7dce
--- /dev/null
+++ b/README.adoc
@@ -0,0 +1,75 @@
+sdn
+===
+:compact-option:
+
+'sdn' is a simple directory navigator that you can invoke while editing shell
+commands. It enables you to:
+
+ * take a quick peek at directory contents without running `ls`
+ * browse the filesystem without all the mess that Midnight Commander does:
+ there's no need to create a subshell in a new pty. The current command line
+ can be simply forwarded if it is to be edited. What's more, it will always
+ be obvious whether the navigator is running.
+
+Development has just started and the only supported platform is Linux.
+I wanted to try a different, simpler approach here.
+
+Building
+--------
+Build dependencies: CMake and/or make, a C++14 compiler, pkg-config +
+Runtime dependencies: ncursesw
+
+ $ git clone https://github.com/pjanouch/sdn.git
+ $ mkdir sdn/build
+ $ cd sdn/build
+ $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug
+ $ make
+
+To install the application, you can do either the usual:
+
+ # make install
+
+Or you can try telling CMake to make a package for you. For Debian it is:
+
+ $ cpack -G DEB
+ # dpkg -i sdn-*.deb
+
+There is also a Makefile you can use to quickly build a binary to be copied
+into the PATH of any machine you want to have 'sdn' on.
+
+zsh
+---
+To start using this navigator, put the following in your .zshrc:
+....
+navigate () {
+ # ... possibly zle-line-init
+ eval `navigator`
+ [ -z "$cd" ] || cd "$cd"
+ [ -z "$insert" ] || LBUFFER="$LBUFFER$insert "
+ zle reset-prompt
+ # ... possibly zle-line-finish
+}
+zle -N navigate
+bindkey '\eo' navigate
+....
+
+As far as I'm aware, bash cannot be used for this, as there is no command to
+reset the prompt from within a `bind -x` handler.
+
+Contributing and Support
+------------------------
+Use this project's GitHub to report any bugs, request features, or submit pull
+requests. If you want to discuss this project, or maybe just hang out with
+the developer, feel free to join me at irc://irc.janouch.name, channel #dev.
+
+Bitcoin donations: 12r5uEWEgcHC46xd64tt3hHt9EUvYYDHe9
+
+License
+-------
+'sdn' is written by Přemysl Janouch <p.janouch@gmail.com>.
+
+You may use the software under the terms of the ISC license, the text of which
+is included within the package, or, at your option, you may relicense the work
+under the MIT or the Modified BSD License, as listed at the following site:
+
+http://www.gnu.org/licenses/license-list.html