1
1

Merge branch '1514_show_right_margin'

* 1514_show_right_margin:
  added keybind CK_Toggle_Show_Margin for toggle show right margin (with empty default key)
  add new etitor parameter editor_show_right_margin
  Ticket #1514 (show right margin)
Этот коммит содержится в:
Ilia Maslakov 2010-01-06 14:38:39 +03:00
родитель eaf0ff08bb c3755f0c50
Коммит 287255b2ed
15 изменённых файлов: 48 добавлений и 9 удалений

Просмотреть файл

@ -85,6 +85,7 @@ int option_edit_top_extreme = 0;
int option_edit_bottom_extreme = 0;
int enable_show_tabs_tws = 1;
int option_check_nl_at_eof = 0;
int show_right_margin = 0;
const char *option_whole_chars_search = "0123456789abcdefghijklmnopqrstuvwxyz_";
char *option_backup_ext = NULL;
@ -2935,6 +2936,11 @@ edit_execute_cmd (WEdit *edit, unsigned long command, int char_for_insertion)
edit->force |= REDRAW_PAGE;
break;
case CK_Toggle_Show_Margin:
show_right_margin = !show_right_margin;
edit->force |= REDRAW_PAGE;
break;
case CK_Toggle_Bookmark:
book_mark_clear (edit, edit->curs_line, BOOK_MARK_FOUND_COLOR);
if (book_mark_query_color (edit, edit->curs_line, BOOK_MARK_COLOR))

Просмотреть файл

@ -61,6 +61,7 @@ extern int visible_tws;
extern int simple_statusbar;
extern int option_check_nl_at_eof;
extern int show_right_margin;
/* used in main() */
void edit_stack_init (void);

Просмотреть файл

@ -289,8 +289,22 @@ print_to_widget (WEdit *edit, long row, int start_col, int start_col_real,
int cols_to_skip = abs (x);
tty_setcolor (EDITOR_NORMAL_COLOR);
tty_draw_hline (edit->widget.y + y, edit->widget.x + x1,
' ', end_col + 1 - start_col);
if (!show_right_margin && -edit->start_col < option_word_wrap_line_length) {
tty_draw_hline (edit->widget.y + y, edit->widget.x + x1,
' ', end_col + 1 - start_col);
} else {
tty_draw_hline (edit->widget.y + y,
edit->widget.x + x1,
' ',
option_word_wrap_line_length - edit->start_col);
tty_setcolor (EDITOR_RIGHT_MARGIN_COLOR);
tty_draw_hline (edit->widget.y + y,
edit->widget.x + x1 + option_word_wrap_line_length + edit->start_col,
' ',
end_col + 1 - start_col);
}
if (option_line_state) {
int i;
@ -305,7 +319,7 @@ print_to_widget (WEdit *edit, long row, int start_col, int start_col_real,
edit_move (x1 + FONT_OFFSET_X, y + FONT_OFFSET_Y);
p = line;
int i = 1;
while (p->ch) {
int style;
unsigned int textchar;
@ -348,6 +362,11 @@ print_to_widget (WEdit *edit, long row, int start_col, int start_col_real,
tty_lowlevel_setcolor (color);
}
}
if (show_right_margin) {
if (i > option_word_wrap_line_length + edit->start_col)
tty_setcolor (EDITOR_RIGHT_MARGIN_COLOR);
i++;
}
tty_print_anychar (textchar);
p++;
}

Просмотреть файл

@ -150,6 +150,7 @@ EditDeleteMacro =
EditToggleLineState = alt-n
EditToggleTabTWS = alt-underline
EditToggleSyntax = ctrl-s
EditToggleShowMargin =
EditFindDefinition = alt-enter
EditLoadPrevFile = alt-minus

Просмотреть файл

@ -148,6 +148,7 @@ EditDeleteMacro =
EditToggleLineState = alt-n
EditToggleTabTWS = alt-underline
EditToggleSyntax = ctrl-s
EditToggleShowMargin =
EditFindDefinition = alt-enter
EditLoadPrevFile = alt-minus

Просмотреть файл

@ -73,6 +73,7 @@
linestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=white;blue
[viewer]
viewunderline=brightred;black

Просмотреть файл

@ -78,6 +78,7 @@
linestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
[viewer]
viewunderline=brightred;blue

Просмотреть файл

@ -74,6 +74,7 @@
linestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
[viewer]
viewunderline=brightred;blue

Просмотреть файл

@ -80,6 +80,7 @@
linestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
[viewer]
viewunderline=brightred;blue

Просмотреть файл

@ -73,6 +73,7 @@
linestate=brightgreen
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;blue
[viewer]
viewunderline=brightgreen;black

Просмотреть файл

@ -128,6 +128,7 @@
#define CK_Maximize 458
#endif
#define CK_Toggle_Show_Margin 460
#define CK_Toggle_Tab_TWS 470
#define CK_Toggle_Syntax 480
#define CK_Toggle_Line_State 490

Просмотреть файл

@ -189,6 +189,7 @@ static name_keymap_t command_names[] = {
{ "EditToggleLineState", CK_Toggle_Line_State },
{ "EditToggleTabTWS", CK_Toggle_Tab_TWS },
{ "EditToggleSyntax", CK_Toggle_Syntax },
{ "EditToggleShowMargin", CK_Toggle_Show_Margin },
{ "EditFindDefinition", CK_Find_Definition },
{ "EditLoadPrevFile", CK_Load_Prev_File },
{ "EditLoadNextFile", CK_Load_Next_File },

Просмотреть файл

@ -222,6 +222,7 @@ static const struct {
{ "editor_line_state", &option_line_state },
{ "editor_simple_statusbar", &simple_statusbar },
{ "editor_check_new_line", &option_check_nl_at_eof },
{ "editor_show_right_margin", &show_right_margin },
#endif /* USE_INTERNAL_EDIT */
{ "nice_rotating_dash", &nice_rotating_dash },

Просмотреть файл

@ -226,7 +226,9 @@ mc_skin_color_cache_init (void)
EDITOR_BOLD_COLOR = mc_skin_color_get ("editor", "editbold");
EDITOR_MARKED_COLOR = mc_skin_color_get ("editor", "editmarked");
EDITOR_WHITESPACE_COLOR = mc_skin_color_get ("editor", "editwhitespace");
EDITOR_RIGHT_MARGIN_COLOR = mc_skin_color_get ("editor", "editrightmargin");
LINE_STATE_COLOR = mc_skin_color_get ("editor", "linestate");
BOOK_MARK_COLOR = mc_skin_color_get ("editor", "bookmark");
BOOK_MARK_FOUND_COLOR = mc_skin_color_get ("editor", "bookmarkfound");
BUTTONBAR_HOTKEY_COLOR = mc_skin_color_get ("buttonbar", "hotkey");

Просмотреть файл

@ -61,15 +61,16 @@
#define EDITOR_BOLD_COLOR mc_skin_color__cache[26]
#define EDITOR_MARKED_COLOR mc_skin_color__cache[27]
#define EDITOR_WHITESPACE_COLOR mc_skin_color__cache[28]
#define EDITOR_RIGHT_MARGIN_COLOR mc_skin_color__cache[29]
/* color of left 8 char status per line */
#define LINE_STATE_COLOR mc_skin_color__cache[29]
#define BOOK_MARK_COLOR mc_skin_color__cache[30]
#define BOOK_MARK_FOUND_COLOR mc_skin_color__cache[31]
#define LINE_STATE_COLOR mc_skin_color__cache[30]
#define BOOK_MARK_COLOR mc_skin_color__cache[31]
#define BOOK_MARK_FOUND_COLOR mc_skin_color__cache[32]
#define BUTTONBAR_HOTKEY_COLOR mc_skin_color__cache[32]
#define BUTTONBAR_BUTTON_COLOR mc_skin_color__cache[33]
#define BUTTONBAR_HOTKEY_COLOR mc_skin_color__cache[33]
#define BUTTONBAR_BUTTON_COLOR mc_skin_color__cache[34]
#define MC_SKIN_COLOR_CACHE_COUNT 34
#define MC_SKIN_COLOR_CACHE_COUNT 35
/*** enums ***************************************************************************************/