kakoune/src
Frank LENORMAND 8a4596bea9 Implement a readonly mode
This commit introduces the `readonly` variable as well as the `-ro`
command line option which prevent buffers from being overwritten on
disk when the `write` command is used without arguments. Some buffers
can selectively be put in readonly mode by setting the `readonly`
variable on the `buffer` scope, the `global` mode will affect all
buffers (even those who will be open subsequently), using the `window`
scope will have no effect.

Closes #685
2016-07-23 10:03:21 +03:00
..
.gdbinit
alias_registry.cc Rework container helpers, use pipe syntax and cleanup implementation 2016-03-08 21:35:56 +00:00
alias_registry.hh Use ranked match based completion for command names 2016-03-08 13:56:37 +00:00
array_view.hh Fix include 2015-06-24 13:40:18 +01:00
assert.cc Use a StringView in notify_fatal_error 2016-02-29 22:15:36 +00:00
assert.hh Use variadic macros for kak_assert to remove the need for COMMA 2016-05-17 19:39:55 +01:00
backtrace.cc String usage cleanups 2016-02-04 23:54:22 +00:00
backtrace.hh Return a String in Backtrace::desc 2015-05-29 13:35:54 +01:00
buffer_manager.cc Implement a readonly mode 2016-07-23 10:03:21 +03:00
buffer_manager.hh BufferManager now owns the Buffers instead of registering them 2016-05-14 08:33:50 +01:00
buffer_utils.cc BufferManager now owns the Buffers instead of registering them 2016-05-14 08:33:50 +01:00
buffer_utils.hh Use ByteCoords directly for buffer insert/erase/replace 2016-03-16 13:59:30 +00:00
buffer.cc Implement a readonly mode 2016-07-23 10:03:21 +03:00
buffer.hh Implement a readonly mode 2016-07-23 10:03:21 +03:00
buffer.inl.hh Make use of strongly typed number to size_t conversion 2016-04-27 09:46:53 +01:00
client_manager.cc Delay window deletion until we get back to main loop 2016-05-14 08:17:52 +01:00
client_manager.hh Delay window deletion until we get back to main loop 2016-05-14 08:17:52 +01:00
client.cc Use named keys for Return and Tab instead of <c-m> and <c-i> 2016-07-05 20:08:13 +01:00
client.hh Replace menu and info when they actually moved 2016-03-30 19:46:43 +01:00
color.cc
color.hh
command_manager.cc Trim trailing end of lines in %sh outputs 2016-06-19 17:01:56 +01:00
command_manager.hh Add completion support for alias/unalias commands 2016-03-24 00:05:40 +00:00
commands.cc Implement a readonly mode 2016-07-23 10:03:21 +03:00
commands.hh Remove the exec_keys function 2015-12-27 23:15:09 +00:00
completion.cc Remove trailing whitespaces 2015-11-19 16:31:00 +01:00
completion.hh Small code tweak 2016-03-24 22:15:11 +00:00
containers.hh Add a SplitView container view 2016-03-25 20:38:26 +00:00
context.cc Clear up info/menus and eventual prompts when reseting to normal mode 2016-06-16 19:35:43 +01:00
context.hh Remove direct access to ui, go through client 2016-02-27 17:23:13 +00:00
coord.hh
diff.hh Remove trailing whitespaces 2015-11-19 16:31:00 +01:00
display_buffer.cc Initial, WIP spelling implementation 2015-12-17 04:07:49 +00:00
display_buffer.hh Initial, WIP spelling implementation 2015-12-17 04:07:49 +00:00
enum.hh Add a SplitView container view 2016-03-25 20:38:26 +00:00
env_vars.cc Keep it simple, remove all that sorted id map thing 2015-09-18 13:52:32 +01:00
env_vars.hh Use IdMap instead of UnorderedMap for ui options and env vars 2015-09-16 19:04:19 +01:00
event_manager.cc Rename set_signal_wrapper to set_signal_handler and tweak SignalHandler def 2016-01-10 20:46:15 +00:00
event_manager.hh Rename set_signal_wrapper to set_signal_handler and tweak SignalHandler def 2016-01-10 20:46:15 +00:00
exception.cc
exception.hh
face_registry.cc fix whitespace label 2016-04-30 11:59:53 +02:00
face_registry.hh Fix face completion, avoid a spurious temporary 2016-02-12 19:14:06 +00:00
face.hh Add an exclusive attribute that overrides existing face 2015-10-23 13:46:41 +01:00
file.cc Fix duplicate buffer problem, fix real_path beahviour 2016-05-15 10:37:01 +01:00
file.hh Only offer directories when completing :cd arguments 2016-04-07 22:47:41 +01:00
flags.hh Move enum option handling in enum.hh and refactor enum options 2015-11-20 09:06:53 +00:00
hash.cc
hash.hh Add a combine_hash helper function 2015-06-20 15:04:31 +01:00
highlighter_group.cc Rework container helpers, use pipe syntax and cleanup implementation 2016-03-08 21:35:56 +00:00
highlighter_group.hh Add missing 'override' specifiers 2015-05-25 13:54:18 +01:00
highlighter.hh Remove redundant forward declaration 2015-06-01 18:33:08 +01:00
highlighters.cc Go back to libc locale and use c_regex_traits 2016-05-19 21:45:23 +01:00
highlighters.hh Initial, WIP spelling implementation 2015-12-17 04:07:49 +00:00
hook_manager.cc Detect recursive hook run and abort in that case 2016-06-27 20:55:07 +01:00
hook_manager.hh Detect recursive hook run and abort in that case 2016-06-27 20:55:07 +01:00
id_map.hh Keep it simple, remove all that sorted id map thing 2015-09-18 13:52:32 +01:00
input_handler.cc Use named keys for Return and Tab instead of <c-m> and <c-i> 2016-07-05 20:08:13 +01:00
input_handler.hh Add a -password switch to :prompt to allow for more secure password entering 2016-04-19 09:51:09 +01:00
insert_completer.cc Reject '//' as a file completion prefix to avoid cygwin network hosts listing 2016-05-19 21:46:27 +01:00
insert_completer.hh Fix a warning about the forward declaration of SelectionList 2016-06-27 20:59:46 +01:00
json_ui.cc Improve robustness of json parsing and execution 2016-07-04 19:31:09 +01:00
json_ui.hh Merge remote-tracking branch 'lenormf/buffer-padding' 2016-04-11 13:44:10 +01:00
keymap_manager.cc
keymap_manager.hh Add remapping of text object keys 2015-07-01 17:53:38 +02:00
keys.cc Use named keys for Return and Tab instead of <c-m> and <c-i> 2016-07-05 20:08:13 +01:00
keys.hh Use named keys for Return and Tab instead of <c-m> and <c-i> 2016-07-05 20:08:13 +01:00
line_modification.cc Use variadic macros for kak_assert to remove the need for COMMA 2016-05-17 19:39:55 +01:00
line_modification.hh
main.cc Implement a readonly mode 2016-07-23 10:03:21 +03:00
Makefile Update Makefile for OSX build with homebrew ncurses 2016-03-10 15:07:50 +01:00
memory.cc
memory.hh Always inline Allocator::construct/destroy 2015-06-26 21:32:37 +01:00
ncurses_ui.cc Use named keys for Return and Tab instead of <c-m> and <c-i> 2016-07-05 20:08:13 +01:00
ncurses_ui.hh Remove padding control options from ncurses ui 2016-04-11 13:54:47 +01:00
normal.cc Allow access to end of line with horizontal moves (h and l) 2016-05-11 00:03:45 +01:00
normal.hh
option_manager.cc Use common completion system for OptionManager::complete_option_name 2016-04-17 19:21:08 +01:00
option_manager.hh Include tweak 2016-03-14 13:41:20 +00:00
option_types.hh Use a specific option type completions for insert completion 2016-04-04 13:42:58 +01:00
optional.hh Refactor Optional::operator== 2016-07-04 19:19:40 +01:00
parameters_parser.cc Store key hash in IdMap 2015-09-16 20:02:12 +01:00
parameters_parser.hh Port even more code to use format function 2015-06-01 21:15:59 +01:00
ranked_match.cc Fix RankedMatch ordering where 'a < a' was true 2016-05-20 18:42:01 +01:00
ranked_match.hh Move UsedLetters with RankedMatch 2016-03-25 20:38:27 +00:00
ref_ptr.hh Fix input mode keep alive handling, use a refcount for input modes 2015-12-12 23:51:51 +00:00
regex.cc Go back to libc locale and use c_regex_traits 2016-05-19 21:45:23 +01:00
regex.hh Go back to libc locale and use c_regex_traits 2016-05-19 21:45:23 +01:00
register_manager.cc Refactor registers to initialize all of them at startup and add null register 2015-11-25 21:48:17 +00:00
register_manager.hh Make DynamicRegister statically dispatch to its function 2016-03-31 09:17:02 +01:00
remote.cc Check session valididty on kak -l and support kak -clear for clearing the dead ones 2016-06-06 19:28:56 +01:00
remote.hh Check session valididty on kak -l and support kak -clear for clearing the dead ones 2016-06-06 19:28:56 +01:00
safe_ptr.hh Style tweak 2015-06-10 22:42:07 +01:00
scope.hh
selection.cc Keep modified selections in non-draft exec/eval -itersel 2016-07-08 09:52:10 +01:00
selection.hh Keep modified selections in non-draft exec/eval -itersel 2016-07-08 09:52:10 +01:00
selectors.cc Use variadic macros for kak_assert to remove the need for COMMA 2016-05-17 19:39:55 +01:00
selectors.hh Do not go backward to when selecting to end of line from the end of line 2016-06-22 19:56:40 +01:00
shared_string.cc dont intern SharedStrings but StringDataPtr 2016-02-05 00:20:45 +00:00
shared_string.hh Get rid of SharedString 2016-02-05 09:38:33 +00:00
shell_manager.cc time window display buffer update in debug profile mode 2016-05-06 00:24:54 +01:00
shell_manager.hh Add support for env var name completion 2016-04-17 19:21:43 +01:00
string.cc Add a String::resize method 2016-06-19 17:01:27 +01:00
string.hh Add a String::resize method 2016-06-19 17:01:27 +01:00
unicode.hh Go back to libc locale and use c_regex_traits 2016-05-19 21:45:23 +01:00
unit_tests.cc Small refactor in unit tests 2015-05-24 22:34:05 +01:00
unit_tests.hh Small refactor in unit tests 2015-05-24 22:34:05 +01:00
units.hh Add checked, explicit conversion from strongly typed number for size_t 2016-04-27 09:46:53 +01:00
unordered_map.hh
user_interface.hh Merge remote-tracking branch 'lenormf/buffer-padding' 2016-04-11 13:44:10 +01:00
utf8_iterator.hh fix bug in utf8_iterator 2016-05-19 20:20:42 +01:00
utf8.hh More string usage cleanup 2016-02-05 09:13:07 +00:00
utils.hh Tweak useage of skip_while and move the functions in utils.hh 2016-03-06 15:12:36 +00:00
value.hh Fix Value constructor, we never want to create reference values 2016-03-06 15:12:36 +00:00
vector.hh
window.cc Delay window deletion until we get back to main loop 2016-05-14 08:17:52 +01:00
window.hh Keep a pointer to current client in windows so that window hooks can access it 2016-05-09 13:48:48 +01:00
word_db.cc Use variadic macros for kak_assert to remove the need for COMMA 2016-05-17 19:39:55 +01:00
word_db.hh Move UsedLetters with RankedMatch 2016-03-25 20:38:27 +00:00