Commit graph

401 commits

Author SHA1 Message Date
Charlie Gordon
ab445e4bc1 improve overwrite-mode
* accept universal argument: NO_ARG: toggle, ==0 insert, !=0 overwrite
* added insert-mode command
2014-01-06 10:24:26 +00:00
Charlie Gordon
deb6972ca3 better charset handling
* make eb_insert_buffer return the number of bytes inserted
* reset page bits upon charset change
* add eb_delete_nextc: delete one encoded character at offset
* add eb_insert_uchar: insert a unicode character with encoding
* add eb_insert_utf8_buf: insert a utf8 encoded buffer with conversion
* make eb_printf insert utf8 bytes with conversion
* add eb_insert_buffer_convert: copy chars between buffers with charset
  conversion
* handle charset conversion correctly in various places
* insert wide caracters from hex mode
* create most buffers as BF_UTF8 by default
* set kill-buffer charset to that of kill source
* convert charsets when yanking
* handle charsets in search/replace system
2014-01-06 09:40:20 +00:00
Charlie Gordon
ee91b6c61f register ucs4 charsets 2014-01-06 04:30:09 +00:00
Charlie Gordon
c91bd12b8f simplified editing modes
* added colorize_func in ModeDef struct
* removed mode_init functions for most language modes
* other small improvements in mode_probe functions
* no need for get_basename in mode_probe functions
2014-01-05 23:42:54 +00:00
Charlie Gordon
a9006eff40 improve hex/binary file detection
* accept shiftin (^N) and shiftout (^O) ASCII control chars in text files
* faster scan in detect_binary
2014-01-05 23:23:09 +00:00
Charlie Gordon
f939ce7181 small improvements
* show new charset in set-buffer-file-coding-system
* do not use double negative if/else constructs
* ignore new extensions in file_completion
* pass filename to probe_mode, no longer need buffer reference
* fix support for line drawing characters in utf8 shell window
2014-01-05 12:51:41 +00:00
Charlie Gordon
3f2dfb08c0 fix do_goto for hex encoded offsets in chars and bytes 2014-01-04 17:35:12 +00:00
Charlie Gordon
2dbe907a64 move first_buffer_data_type to QEmacsState 2014-01-04 17:32:42 +00:00
Charlie Gordon
b3a709013a improve mode selection, cleanup
* pass ModeDef pointer to mode_probe functions
* add extensions field to mode structure
* rename ascii mode to binary mode
* rename mode variables and fields to more specific names
2014-01-04 17:26:30 +00:00
Charlie Gordon
b9d6113ba3 improve unicode hex display mode
* filter control characters and non BMP1 code points
* new mode specific modeline
* do not space out single width glyphs (not very readable)
* eb_get_char_offset: add validation on offset argument
* eb_get_char_offset: align offset argument on character boundary
2014-01-04 15:54:48 +00:00
Charlie Gordon
02dec8bf1a added generic utility function unicode_glyph_tty_width in charset.c
* moved and improved code from tty_term_glyph_width
2014-01-02 11:28:30 +00:00
Charlie Gordon
f9fe5a2032 improved utf8 charset selection for shell buffer 2014-01-02 10:22:48 +00:00
Charlie Gordon
ccbf2991cf allow NULL extlist in match_extension 2014-01-02 10:12:59 +00:00
Charlie Gordon
8892038d77 added rule to generate assembly language 2014-01-02 10:10:24 +00:00
Charlie Gordon
70eeae2309 support +line_num cmdline syntax in front of filenames 2013-12-27 02:04:21 +00:00
Charlie Gordon
7759a1467a simplified edit_set_mode API, display mode in bufed 2013-12-27 01:54:12 +00:00
Charlie Gordon
a3286d64ba simplified shell process interface, added ssh command
* more generic new_shell_buffer API, takes cmd, caption, flags
* added ssh command to open ssh connections
2013-12-24 23:42:10 +00:00
Charlie Gordon
722f8b919c use shell commands for all subprocesses 2013-12-24 16:12:48 +00:00
Charlie Gordon
ae7e2089fb warning about potential problem with signed errors in unused code 2013-12-24 16:10:52 +00:00
Charlie Gordon
67ecab27b5 changed match_extension utility function
* allow multiple extensions eg: |tar.gz|
2013-12-23 23:39:02 +00:00
Charlie Gordon
64ba634c2a shell.c: fixed shell buffer for Haiku
* moved setsid() call before open of pseudo terminal in child process
* increased buffer size to catch all output from child process
* catch stderr output from non interactive processes
2013-12-23 23:33:34 +00:00
Charlie Gordon
9434c3ba7b renamed functions for consistency 2013-12-23 23:26:43 +00:00
Charlie Gordon
0a90a0e83f added configure variables for portability (Haiku from Francois Revel)
Added datadir and mandir for systems that use different directory trees
In Haiku we don't have share/ at the usual prefix, and man pages are in
documentation/man/... So we need to pass those to configure.
This patch adds --datadir and --mandir support, the autofools way.
2013-12-21 16:24:38 +00:00
Charlie Gordon
c05cee4e3d fixed compile warnings in gcc2 (for Haiku) 2013-12-19 01:00:14 +00:00
Charlie Gordon
77dfc0b6f3 Haiku patch from Francois Revol
* remove unused variables/functions
* remove commented out debug output
* make haiku_dpy static; no need to memcpy() it
* Fix calling [un]init_appplication()
2013-12-19 00:41:22 +00:00
Charlie Gordon
0d64bd2666 configure: fixed -h and -help command line options, added x86_64 arch 2013-12-19 00:13:49 +00:00
Charlie Gordon
8027f3e0dd shell: cosmetic changes 2013-12-18 23:39:53 +00:00
Charlie Gordon
4640153cb5 removed ugly casts 2013-12-17 23:42:52 +00:00
Charlie Gordon
94a0f56bb3 improved protability in configure, use /bin/sh 2013-12-17 23:17:09 +00:00
Charlie Gordon
cce8822e94 fixed tar target, improved portability 2013-12-17 23:13:47 +00:00
Charlie Gordon
2bf4cf3a49 Filter qe-doc.html to remove date dependency
* Added filtering post texi2html to remove date items.
  This makes the output file qe-doc.html time independent
2013-12-17 17:36:50 +00:00
Charlie Gordon
0a8cebb693 work-in-progress Haiku port from Francois Revol
* Fix hardcoded -ldl and -lm in the Makefile
* BeOS does not have -lm (it's part of libroot)
* Add Haiku GUI driver haiku.cpp
* Add helper script haiku-pe2qe.sh to clone color settings from Pe to Qemacs
2013-12-17 16:08:55 +00:00
Charlie Gordon
68b4ba44ab fix for C++ compile (needed for Haiku)
renamed private structure members to priv_data
added casts on assignents from void* (OK in C, not in C++)
2013-12-17 16:06:35 +00:00
Charlie Gordon
407c7d6218 revert haiku patch 2013-12-17 16:01:12 +00:00
Charlie Gordon
10ccf3b91e msg 2013-12-17 14:55:44 +00:00
Charlie Gordon
33446d8d3c msg1 2013-12-17 14:46:19 +00:00
Charlie Gordon
163f7b7d96 make shell output buffers unmodified upon process exit 2013-12-03 17:44:00 +00:00
Charlie Gordon
a3c02ba3d4 display modified and read-only indicators in buffer list
display encoding and home relative filename in buffer list
2013-12-03 17:41:50 +00:00
Charlie Gordon
357cf51a52 display error msg or new current directory in cd command 2013-12-03 17:38:16 +00:00
Charlie Gordon
d29b43912a removed confusing code 2013-12-03 17:36:15 +00:00
Charlie Gordon
c1833a2f53 added make_user_path to compute path relative to user HOME directory 2013-12-03 17:35:06 +00:00
Charlie Gordon
5c678f0236 make pstrcpy return destination buffer 2013-12-03 17:31:49 +00:00
Charlie Gordon
a0201f86bc - display error message on next-error / previous-error
- setting error position was off by one line
- fixed error source handling: use last shell or compile command
2013-11-30 14:18:57 +00:00
Charlie Gordon
b7af4afae6 - fixed potential bug in eb_next_line for offset < 0.
- make it return '\n' and set offset to 0, similar to behavior at EOB
2013-11-30 13:50:12 +00:00
Charlie Gordon
c2155e1d7b added feedback for change-directory command 2013-11-30 12:12:40 +00:00
Charlie Gordon
b9a4189c39 improved man command:
- fixed bug on OS/X to force unlimited lines in shell output buffers
- added pager mode
- made output buffer read only, allow shell output to read only buffer

improved shell mode:
- set buffer encoding from LANG environment variable: utf8 or vt100
- special cased utf8 support for shell output
- handle charset in shell input
- enter / exit shell interactive mode with C-a and C-e (home and end)
- reset error offset upon enter key
2013-11-29 00:32:52 +00:00
Charlie Gordon
9a684a9c25 patch for OS/X to expand user home dir to /Users/xxx instead of /home/xxx
this is a poor solution, should use a more generic method.
2013-11-28 15:52:38 +00:00
Charlie Gordon
ba06d7883e fixed gcc 4.7 warnings about variables set but unused 2013-11-23 19:11:13 +00:00
Charlie Gordon
ee1282ef91 - added test for texi2html install to control doc build
- added config variable CONFIG_HAS_TYPEOF
- improved qe_free type checking with typeof
- fixed gcc 4.4.5 warning on strict anti-aliasing breakage
2013-11-23 10:55:20 +00:00
Charlie Gordon
8ed0526efe remove dSYM directories on target clean 2013-11-23 10:54:32 +00:00