mirror of
https://github.com/misterunknown/ifm.git
synced 2025-08-09 01:26:32 +02:00
Add option to show invisible chars in ace editor
This commit is contained in:
@@ -62,6 +62,7 @@
|
|||||||
"invalid_filename": "Invalid filename given.",
|
"invalid_filename": "Invalid filename given.",
|
||||||
"invalid_params": "Invalid parameter given.",
|
"invalid_params": "Invalid parameter given.",
|
||||||
"invalid_url": "Invalid URL given.",
|
"invalid_url": "Invalid URL given.",
|
||||||
|
"invis_chars": "Invisible chars",
|
||||||
"json_encode_error": "Could not format the response as JSON:",
|
"json_encode_error": "Could not format the response as JSON:",
|
||||||
"last_modified": "Last Modified",
|
"last_modified": "Last Modified",
|
||||||
"load_config_error": "Could not load configuration.",
|
"load_config_error": "Could not load configuration.",
|
||||||
|
@@ -62,6 +62,7 @@
|
|||||||
"invalid_filename": "Неверное имя файла.",
|
"invalid_filename": "Неверное имя файла.",
|
||||||
"invalid_params": "Неверный параметр.",
|
"invalid_params": "Неверный параметр.",
|
||||||
"invalid_url": "Неверный URL.",
|
"invalid_url": "Неверный URL.",
|
||||||
|
"invis_chars": "Невидимые символы",
|
||||||
"json_encode_error": "Не удалось представить ответ в виде JSON:",
|
"json_encode_error": "Не удалось представить ответ в виде JSON:",
|
||||||
"last_modified": "Изменено",
|
"last_modified": "Изменено",
|
||||||
"load_config_error": "Ошибка загрузки конфигурации.",
|
"load_config_error": "Ошибка загрузки конфигурации.",
|
||||||
|
12
src/ifm.js
12
src/ifm.js
@@ -531,12 +531,14 @@ function IFM(params) {
|
|||||||
// var ihatethisfuckingpopoverworkaround = $('#editoroptions').data('bs.popover');
|
// var ihatethisfuckingpopoverworkaround = $('#editoroptions').data('bs.popover');
|
||||||
// $(ihatethisfuckingpopoverworkaround.tip).find( '.popover-body' ).empty();
|
// $(ihatethisfuckingpopoverworkaround.tip).find( '.popover-body' ).empty();
|
||||||
|
|
||||||
let aceSession = self.editor.getSession();
|
let aceEditor = self.editor;
|
||||||
|
let aceSession = aceEditor.getSession();
|
||||||
let content = self.getNodeFromString(
|
let content = self.getNodeFromString(
|
||||||
Mustache.render(
|
Mustache.render(
|
||||||
self.templates.file_editoroptions,
|
self.templates.file_editoroptions,
|
||||||
{
|
{
|
||||||
wordwrap: ( aceSession.getOption( 'wrap' ) == 'off' ? false : true ),
|
wordwrap: ( aceSession.getOption( 'wrap' ) == 'off' ? false : true ),
|
||||||
|
invischars: aceEditor.getOption( 'showInvisibles' ),
|
||||||
softtabs: aceSession.getOption( 'useSoftTabs' ),
|
softtabs: aceSession.getOption( 'useSoftTabs' ),
|
||||||
tabsize: aceSession.getOption( 'tabSize' ),
|
tabsize: aceSession.getOption( 'tabSize' ),
|
||||||
ace_includes: self.ace,
|
ace_includes: self.ace,
|
||||||
@@ -552,6 +554,11 @@ function IFM(params) {
|
|||||||
aceSession.setOption( 'wrap', e.srcElement.checked );
|
aceSession.setOption( 'wrap', e.srcElement.checked );
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
if( el = content.querySelector("#editor-invisible-chars")) {
|
||||||
|
el.addEventListener( 'change', function( e ) {
|
||||||
|
aceEditor.setOption( 'showInvisibles', e.srcElement.checked );
|
||||||
|
});
|
||||||
|
}
|
||||||
if( el = content.querySelector("#editor-softtabs" ))
|
if( el = content.querySelector("#editor-softtabs" ))
|
||||||
el.addEventListener( 'change', function( e ) {
|
el.addEventListener( 'change', function( e ) {
|
||||||
aceSession.setOption( 'useSoftTabs', e.srcElement.checked );
|
aceSession.setOption( 'useSoftTabs', e.srcElement.checked );
|
||||||
@@ -561,10 +568,11 @@ function IFM(params) {
|
|||||||
aceSession.setOption( 'tabSize', e.srcElement.value );
|
aceSession.setOption( 'tabSize', e.srcElement.value );
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if( el = content.querySelector("#editor-syntax" ))
|
if( el = content.querySelector("#editor-syntax" )) {
|
||||||
el.addEventListener( 'change', function( e ) {
|
el.addEventListener( 'change', function( e ) {
|
||||||
aceSession.getSession().setMode( e.target.value );
|
aceSession.getSession().setMode( e.target.value );
|
||||||
});
|
});
|
||||||
|
}
|
||||||
return content;
|
return content;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -8,6 +8,14 @@
|
|||||||
>
|
>
|
||||||
<label class="form-check-label" for="editor-wordwrap">{{i18n.word_wrap}}</label>
|
<label class="form-check-label" for="editor-wordwrap">{{i18n.word_wrap}}</label>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-check">
|
||||||
|
<input class="form-check-input" type="checkbox" id="editor-invisible-chars"
|
||||||
|
{{#invischars}}
|
||||||
|
checked="checked"
|
||||||
|
{{/invischars}}
|
||||||
|
>
|
||||||
|
<label class="form-check-label" for="editor-invisible-chars">{{i18n.invis_chars}}</label>
|
||||||
|
</div>
|
||||||
<div class="form-check">
|
<div class="form-check">
|
||||||
<input class="form-check-input" type="checkbox" id="editor-softtabs"
|
<input class="form-check-input" type="checkbox" id="editor-softtabs"
|
||||||
{{#softtabs}}
|
{{#softtabs}}
|
||||||
|
Reference in New Issue
Block a user