Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Dextrous text editor
C Makefile C++ Other
branch: master

v1.0

latest commit b1f65ce480
@tihirvon authored
Failed to load latest commit information.
Documentation Document \uXXXX and \uXXXXXXXX inside double quoted strings
share Fix XML syntax file to highlight tag names according to the standard
.gitignore Add test program
COPYING curl http://www.gnu.org/licenses/gpl-2.0.txt > COPYING
FAQ Use ncurses to read terminal capabilities
Makefile
Makefile.lib Split confusing macro
README.md Use ncurses to read terminal capabilities
alias.c Add streq() and use it instead of strcmp()
alias.h Move alias code to alias.[ch]
bind.c Rewrite key input
bind.h Rewrite key input
block.c Replace lines_changed() with buffer_mark_lines_changed()
block.h Use long instead of unsigned int for buffer sizes, offsets etc.
buffer-iter.c Use long instead of unsigned int for buffer sizes, offsets etc.
buffer.c Replace lines_changed() with buffer_mark_lines_changed()
buffer.h
cconv.c Fix some format specifier and mismatched type warnings
cconv.h
change.c Define enum selection and struct view in view.h
change.h Split buffer_delete_bytes() into two functions
cmdline.c Rewrite key input
cmdline.h Rewrite key input
color.c Add italic attribute
color.h Use bool type
command-mode.c Rewrite key input
command.h Change command parser to return error instead of printing it
commands.c Remove redundant windows array
common.c Move count_nl() to common.c
common.h do_collect_files: Don't assume dirprefix has trailing slash
compiler.c Set REG_EXTENDED flag in regexp_compile()
compiler.h Validate compiler error formats as soon as possible
completion.c collect_files: Use path_dirname() and path_basename()
completion.h Move completion.c prototypes to completion.h
config.c gbuf: Don't keep buffer NUL-terminated
config.h Use bool type
ctags.c Search tag files from parent directories too
ctags.h Search tag files from parent directories too
ctype.c Add hex_decode() and isxdigit()
ctype.h Add hex_decode() and isxdigit()
cursed.c Use ncurses to read terminal capabilities
cursed.h Use ncurses to read terminal capabilities
decoder.c Add streq() and use it instead of strcmp()
decoder.h Use bool type
detect.c
detect.h Add detect-indent option
edit.c
edit.h case: Remove -m flag
editor.c Remove redundant windows array
editor.h
encoder.c Use streq() instead of strcmp()
encoder.h Use cconv in file_encoder
encoding.c Add streq() and use it instead of strcmp()
encoding.h Headers should include as little as possible
env.c Simplify env.c
env.h Simplify env.c
error.c Add struct error
error.h Add struct error
file-history.c Increase file history size
file-history.h Use bool type
file-location.c Use less global window, view and buffer
file-location.h Cleanup
file-option.c Don't use global buffer in file-option.c
file-option.h Don't use global buffer in file-option.c
filetype.c Use streq() instead of strcmp()
filetype.h Use bool type
fork.c close_on_exec() does not need to be inline
fork.h close_on_exec() does not need to be inline
format-status.c Allow "%Y" in statusline format for displaying total number of lines
format-status.h Status line formatting cleanup
frame.c Remove redundant windows array
frame.h Add new_root_frame()
gbuf.c Remove obsolete comment
gbuf.h Fix compile warning
git-open.c Rewrite key input
git-open.h Rewrite key input
history.c Change ptr_array_remove() to take pointer argument
history.h Use bool type
hl.c Change syntax highlighter to not use global buffer
hl.h Change syntax highlighter to not use global buffer
indent.c Define enum selection and struct view in view.h
indent.h Use bool type
input-special.c Rewrite key input
input-special.h Rewrite key input
iter.c Replace buffer_get_bytes() with block_iter_get_bytes()
iter.h Replace buffer_get_bytes() with block_iter_get_bytes()
key.c Rewrite key input
key.h
libc.h Use bool type
list.h Use offsetof() defined in stddef.h
load-save.c Move file locking and marking readonly from load_buffer() to open_buf…
load-save.h Change save_buffer() to not use global buffer
lock.c Fix crash when lock file doesn't exist
lock.h
main.c Remove redundant windows array
modes.c Add git-open command
modes.h Rewrite key input
move.c word-bwd, word-fwd: Stop at newline
move.h Use less global variables
msg.c Add ptr_array_free_cb()
msg.h Cleanup
normal-mode.c Rewrite key input
obuf.c Remove broken latin1 terminal support
obuf.h Use long instead of unsigned int for buffer sizes, offsets etc.
options.c Replace show-tab-bar and vertical-tab-bar with tab-bar option
options.h Replace show-tab-bar and vertical-tab-bar with tab-bar option
parse-args.c
parse-args.h Move count_strings() to common.c
parse-command.c Rename gbuf_add_ch() to gbuf_add_byte() and add unicode aware gbuf_ad…
path.c Add path_dirname()
path.h Add path_dirname()
ptr-array.c Add ptr_array_free_cb()
ptr-array.h Add ptr_array_free_cb()
regexp.c Assume regex passed to regexp_match_nosub() and regexp_match() is valid
regexp.h
run.c Change command parser to return error instead of printing it
screen-tabbar.c Replace show-tab-bar and vertical-tab-bar with tab-bar option
screen-view.c Add view parameter to init_selection()
screen.c Remove redundant windows array
screen.h Don't use global buffer in update_term_title()
search-mode.c Rewrite key input
search.c Rename gbuf_add_ch() to gbuf_add_byte() and add unicode aware gbuf_ad…
search.h Move code to file-location.c
selection.c Replace get_selection() with view_get_selection()
selection.h
spawn.c Make it obvious that buffer returned bu gbuf_steal() isn't NUL-termin…
spawn.h int to long changes
state.c Add path_basename()
state.h Use bool type
syntax.c Add ptr_array_free_cb()
syntax.h Use bool type
tabbar.c Use less global window, view and buffer
tabbar.h Make first_tab_idx window specific
tag.c Search tag files from parent directories too
tag.h Search tag files from parent directories too
term-caps.c Use xnew() instead of malloc()
term.c Use ncurses to read terminal capabilities
term.h Use ncurses to read terminal capabilities
test-main.c
uchar.c Use long instead of unsigned int for buffer sizes, offsets etc.
uchar.h Use long instead of unsigned int for buffer sizes, offsets etc.
unicode.c
unicode.h Use bool type
update-option Force recompile if datadir or compiler flags change
vars.c Move build configuration to vars.c
view.c Use less global window, view and buffer
view.h Replace get_word_under_cursor() with view_get_word_under_cursor()
wbuf.c Rename util.c to common.c and move prototypes to common.h
wbuf.h Move wbuf_*() to wbuf.c
window.c Remove redundant windows array
window.h Remove redundant windows array
xmalloc.c Rename macros starting with underscore
xmalloc.h Rename macros starting with underscore

README.md

dex

Dextrous text editor

Copyright 2010 Timo Hirvonen tihirvon@gmail.com

Introduction

dex is a small and easy to use text editor. Colors and bindings can be fully customized to your liking.

It has some features useful to programmers, like ctags support and it can parse compiler errors, but it does not aim to become an IDE.

Installation

The only dependencies are libc and ncurses.

To compile this program you need GNU make and a modern C-compiler (tested with gcc and clang).

You need to specify all options for both make and make install. Alternatively you can put your build options into a Config.mk file.

make prefix=$HOME
make prefix=$HOME install

The default prefix is /usr/local and DESTDIR works as usual. See the top of the Makefile for more information.

Something went wrong with that request. Please try again.