pbek / QOwnNotes

QOwnNotes is a plain-text file notepad and todo-list manager with Markdown support and Nextcloud / ownCloud integration.
https://www.qownnotes.org/
GNU General Public License v2.0
4.69k stars 414 forks source link

[I] User defined Editor width #3153

Closed BsNoSi closed 3 days ago

BsNoSi commented 1 week ago

Expected behaviour

Userdefined setting of 64 chars should keep this with by count of chars.

Actual behaviour

Setting userdefined width takes the current font width to set margins. Zooming actions (larger, smaler size) are limited to this widh in pixels instead "width in char".

Steps to reproduce

Menu → Window → Editor width → Custom

set amount of characters → ok

Zoom in/out. Instead of fixed char per line the line with is fixed to size of 64 chars at time of definition in pixels.

Relevant log output in the Log panel

Expand ``` [11:49:41] [debug] updatePanelMenu - 'updatePanelMenu' ```

Information about the application, settings and environment

Expand QOwnNotes Debug Information =========================== ## General Info **Current Date**: `Di Nov 5 11:49:44 2024` **Version**: `24.11.0` **Build date**: `Nov 3 2024` **Build number**: `1137` **Platform**: `windows (windows)` **Operating System**: `Windows 10 Version 2009` **Build architecture**: `x86_64` **Current architecture**: `x86_64` **Release**: `GitHub Actions` **Qt Version (build)**: `5.15.2` **Qt Version (runtime)**: `5.15.2` **Portable mode**: `no` **Settings path / key**: `\HKEY_CURRENT_USER\Software\PBE\QOwnNotes` **Application database path**: `C:\Users\xxxxxx\AppData\Roaming\PBE\QOwnNotes\QOwnNotes.sqlite` **Application arguments**: `C:\Tools\QOwnNotes\QOwnNotes.exe` **Qt Debug**: `0` **Locale (system)**: `de_DE` **Locale (interface)**: *empty* **Primary screen resolution**: `3840x2160` **Icon theme**: `breeze-dark-qownnotes` **Notes in current note folder**: `447` **Calendar items**: `4` **Enabled scripts**: `3` **Database drivers**: `QSQLITE, QODBC, QODBC3, QPSQL, QPSQL7` ## Server Info **serverUrl**: `https://nc.nosi.de` **appIsValid**: `yes` **notesPathExists**: `yes` **serverVersion**: `30.0.1.2` **appVersion**: *empty* ## Spellchecking **Enabled**: `false` **Selected language**: `auto` **Language codes**: `de_DE_frami, en_GB` **Language names**: `Deutsch (Deutschland), British English (United Kingdom)` **Application dictionaries path**: `C:\Users\xxxxxx\AppData\Roaming\PBE\QOwnNotes\dicts` ## Note folders **currentNoteFolderId**: `1` ### Note folder `Notizen` **id**: `1` **isCurrent**: `yes` **activeTagId**: `-1` **localPath**: `C:\Tools\Notizen` **remotePath**: `Notes` **cloudConnectionId**: `1` **isShowSubfolders**: `yes` **isUseGit**: `no` **allowDifferentNoteFileName**: `no` **activeNoteSubFolder name**: `Artikel` **database file**: `C:\Tools\Notizen\notes.sqlite` ## Cloud connections ### Cloud connection `Standard` **id**: `1` **isCurrent**: `yes` **serverUrl**: `https://nc.nosi.de` **username**: `NoSi` **accountId**: *empty* ## Enabled scripts ### Script `Markdown-it markdown parser` **id**: `1` **path**: `C:\Users\xxxxxx\AppData\Roaming\PBE\QOwnNotes\scripts\markdown-it\markdown-it.qml` **variablesJson**: ``` { "customStylesheet": "", "options": "{\n html: true, // Enable HTML tags in source\n //xhtmlOut: false, // Use '/' to close single tags (
)\n breaks: true, // Convert '\\n' in paragraphs into
\n //langPrefix: 'language-', // CSS language prefix for fenced blocks\n linkify: true, // autoconvert URL-like texts to links\n\n // Enable some language-neutral replacements + quotes beautification\n typographer: true,\n\n // Double + single quotes replacement pairs, when typographer enabled,\n // and smartquotes on. Could be either a String or an Array.\n //\n // For example, you can use '«»„“' for Russian, '„“‚‘' for German,\n // and ['«\\xA0', '\\xA0»', '‹\\xA0', '\\xA0›'] for French (including nbsp).\n //quotes: '\\u201c\\u201d\\u2018\\u2019', /* “”‘’ */\n\n // Highlighter function. Should return escaped HTML,\n // or '' if the source string is not changed and should be escaped externaly.\n // If result starts with p:first-of-type em{font-variation-settings:\"wght\" 550,\"slnt\" -10,\"FLAR\" 50, \"VOLM\" 50;}\n}\nhtml{font-display:swap;text-rendering:optimizeLegibility;color:#444;//font-size:1.15rem;// line-height:1.45;lang:\"de\"}\nbody{color:#444;}\n@media only screen{body{margin:0 auto;padding:30px;padding-bottom:100px;max-width:42em;font-size:clamp(0.8em,2vw,1.5em);}\n}\na{color:#336699;}\nh1,h2,h3,h4,h5,h6{color:#336699;position:relative;margin-top:1rem;margin-bottom:1rem;font-weight:bold;line-height:1.5;cursor:text;}\nh1:hover a.anchor,h2:hover a.anchor,h3:hover a.anchor,h4:hover a.anchor,h5:hover a.anchor,h6:hover a.anchor{text-decoration:none;}\nh1 tt,h1 code{font-size:inherit;}\nh2 tt,h2 code{font-size:inherit;}\nh3 tt,h3 code{font-size:inherit;}\nh4 tt,h4 code{font-size:inherit;}\nh5 tt,h5 code{font-size:inherit;}\nh6 tt,h6 code{font-size:inherit;}\nh1{font-size:2.25em;line-height:1.2;}\nh2{font-size:1.75em;line-height:1.225;}\nh3{font-size:1.5em;line-height:1.43;}\nh4{font-size:1.25em;}\nh5{font-size:1em;}\nh6{font-size:1em;}\np,ul,ol,dl,table{margin:0.8em 0;}\np{hyphens:auto;hyphenate-limit-chars:6 2 2;hyphenate-limit-lines:2;hyphenate-limit-last:always;hyphenate-limit-zone:8%;text-align:justify;text-align-last:none;orphans:3;widows:4;line-height:1.35em;}\nem{font-style:italic;font-variation-settings:\"wght\" inherit,\"FLAR\" 80,\"VOLM\" 80;padding:0 0.15em}\nli>ol,li>ul{margin:0 0;}\nhr{height:2px;padding:0;margin:16px 0;background-color:#e7e7e7;border:0 none;overflow:hidden;box-sizing:content-box;}\nli p.first{display:inline-block;}\nul,ol{padding-left:30px;}\nul:first-child,ol:first-child{margin-top:0;}\nul:last-child,ol:last-child{margin-bottom:0;}\ncode{background-color:#f3f4f4;padding:0 2px 0 2px;}\ndt{font-weight:bold;font-variation-settings:\"wght\" 700,\"FLAR\" 100,\"VOLM\" 100;font-size:1.05em;padding-top:.2em;}\ndd{padding-left:1em}\n\n@media print{html{font-size:13px;}\npre{page-break-inside:avoid;word-wrap:break-word;}\n}\nsub{font-size:0.75em;vertical-align:0.0em}\nsup{font-size:0.75em;vertical-align:0.3em}\nblockquote{padding:0 0 0 1rem;display:grid;grid-template-columns:100%;grid-gap:0;color:#444;}\nblockquote{border-left:0.5rem solid #00AA00;border-radius:0 0.3rem 0.3rem 0;}\nblockquote blockquote{margin:-0.3rem -0.3rem -0.3rem -1.55rem;border-left:0.6rem solid #FFBB00;}\nblockquote blockquote blockquote{margin:-0.3rem -0.3rem -0.3rem -1.6rem;border-left:0.7rem solid #DD0000;}\nblockquote ul,blockquoteol{padding-left:2rem;}\nblockquote ul>ul,blockquote ol>ol,blockquote ol>ul,blockquote ul>ol{border-left:none;}\nblockquote table{display:block;padding:1em;width:100%;border-bottom:none;}\nblockquote tbody{border-bottom:1px solid #336699;}\ntable{margin:0 0 0.3em 0;padding:0;border-bottom:1px solid #336699;border-collapse:collapse;width:100%;}\nth,td{padding:0.3em;}\nth{background-color:#336699;color:#fdfdfd;;border:1px solid #336699;}\ntr td{border-left:1px solid #336699;border-right:1px solid #336699;}\ntr:nth-child(odd){background-color:#D1E8FF;}\ntd{vertical-align:top;}\np:first{font-weight:bold}\n" } ``` **identifier**: `preview-styling` **version**: `0.0.5` **minAppVersion**: `20.6.0` ### Script `Export notes as one HTML file` **id**: `3` **path**: `C:\Users\xxxxxx\AppData\Roaming\PBE\QOwnNotes\scripts\export-notes-as-one-html\export-notes-as-one-html.qml` **variablesJson**: ``` { } ``` **identifier**: `export-notes-as-one-html` **version**: `1.0.0` **minAppVersion**: `18.03.7` ## Settings **AboutDialog/geometry** (QByteArray): `` **ActiveNoteHistoryItem** (NoteHistoryItem): `` **CloudConnection-1/nextcloudDeckBoardId** (int): `1` **CloudConnection-1/nextcloudDeckEnabled** (QString): `false` **CloudConnection-1/nextcloudDeckStackId** (int): `1` **Debug/fakeOldVersionNumber** (QString): `false` **Debug/fileLogging**: *empty* **DictionaryManagerDialog/geometry** (QByteArray): `` **DictionaryManagerDialog/mainSplitterState** (QByteArray): `` **DistractionFreeMode/editorWidthCustom** (int): `64` **DistractionFreeMode/editorWidthMode** (int): `5` **DistractionFreeMode/isEnabled** (QString): `false` **DistractionFreeMode/menuBarGeometry** (QByteArray): `` **DistractionFreeMode/menuBarHeight** (int): `36` **DistractionFreeMode/menuBarVisible** (QString): `true` **DistractionFreeMode/windowState** (QByteArray): `` **Editor/CurrentSchemaKey** (QString): `EditorColorSchema-a570236e-8e54-471b-884e-8fec5363b7ee` **Editor/autoBracketClosing** (QString): `false` **Editor/autoBracketRemoval** (QString): `false` **Editor/centerCursor** (bool): `true` **Editor/disableCursorBlinking** (QString): `false` **Editor/editorWidthInDFMOnly** (QString): `false` **Editor/highlightCurrentLine** (QString): `true` **Editor/indentSize** (int): `4` **Editor/removeTrailingSpaces** (QString): `true` **Editor/showLineNumbers** (QString): `false` **Editor/useTabIndent** (QString): `true` **Editor/vimMode** (QString): `false` **FileDialog/LastPath** (QString): `D:/temp` **FileDialog/LastPath-Joplin Import** (QString): `F:/Joplin` **FileDialog/LastPath-NotePDFExport** (QString): `D:/temp` **FileDialog/LastPath-PreviewHTMLFileExport** (QString): `D:/temp` **IssueAssistantDialog/geometry** (QByteArray): `` **JoplinImport/AttachmentImportCheckBoxChecked** (QString): `true` **JoplinImport/FolderImportCheckBoxChecked** (QString): `true` **JoplinImport/ImageImportCheckBoxChecked** (QString): `true` **JoplinImport/MetadataImportCheckBoxChecked** (QString): `false` **JoplinImport/TagImportCheckBoxChecked** (QString): `true` **JoplinImportDialog/geometry** (QByteArray): `` **LastUpdateCheck** (QDateTime): `2024-11-05T11:13:14.108` **LinkDialog/geometry** (QByteArray): `` **LocalTrashDialog/geometry** (QByteArray): `` **LogWidget/criticalLog** (bool): `true` **LogWidget/debugLog** (bool): `true` **LogWidget/fatalLog** (bool): `true` **LogWidget/infoLog** (bool): `true` **LogWidget/scriptingLog** (bool): `true` **LogWidget/statusLog** (bool): `true` **LogWidget/warningLog** (bool): `true` **MainWindow/geometry** (QByteArray): `` **MainWindow/mainToolBar.iconSize** (int): `30` **MainWindow/menuBarGeometry** (QByteArray): `` **MainWindow/noteSubFolderTreeWidgetExpandState-1** (QStringList): `Entwicklung/Screenshot, Artikel, Entwicklung, Zu Hause, Garten` **MainWindow/noteTextEdit.code.font** (QString): `Courier New,18,-1,2,50,0,0,0,0,0` **MainWindow/noteTextEdit.font** (QString): `Droid Sans,17,-1,5,50,0,0,0,0,0,Regular` **MainWindow/noteTextView.code.font** (QString): `Courier New,12,-1,5,50,0,0,0,0,0,Standard` **MainWindow/noteTextView.font** (QString): `Commissioner Flair,12,-1,5,50,0,0,0,0,0,Regular` **MainWindow/noteTextView.ignoreCodeFontSize** (QString): `true` **MainWindow/noteTextView.refreshDebounceTime** (int): `1000` **MainWindow/noteTextView.rtl** (QString): `false` **MainWindow/noteTextView.underline** (QString): `true` **MainWindow/noteTextView.useEditorStyles** (QString): `false` **MainWindow/noteTextView.useInternalExportStyling** (QString): `true` **MainWindow/showNotesFromAllNoteSubFolders** (QString): `false` **MessageBoxOverride/copy-notes** (int): `16384` **MessageBoxOverride/windows-light-mode** (int): `65536` **NoteBookmark1** (NoteHistoryItem): `` **NoteBookmark2** (NoteHistoryItem): `` **NoteBookmark6** (NoteHistoryItem): `` **NoteDialog/geometry** (QByteArray): `` **NoteDialog/tabWidgetIndex** (int): `0` **NoteDiffDialog/geometry** (QByteArray): `` **NoteFolder-1/NoteTabNameList** (QStringList): `QOwnNotes als Joplin-Ersatz` **NoteFolder-1/NoteTabStickinessList** (QStringList): *empty* **NoteFolder-1/NoteTabSubFolderPathDataList** (QStringList): `Artikel` **NoteHistory-1** (QVariantList): `` **NoteHistoryCurrentIndex-1** (int): `23` **PiwikClientId** (QString): `` **Printer/NotePDFExportOrientation** (int): `0` **Printer/NotePDFExportPageSize** (int): `4` **ScriptRepositoryDialog/geometry** (QByteArray): `` **ScriptRepositoryDialog/mainSplitterState** (QByteArray): `` **SearchEngineId** (int): `2` **SettingsDialog/geometry** (QByteArray): `` **SettingsDialog/mainSplitterState** (QByteArray): `` **Shortcuts/MainWindow-actionFind_action** (QString): *empty* **Shortcuts/MainWindow-actionInsert_text_link** (QString): *empty* **Shortcuts/MainWindow-action_Open_note_in_external_editor** (QString): `Alt+X` **Shortcuts/MainWindow-customAction_exportHTML** (QString): *empty* **ShowSystemTray** (QString): `false` **StartHidden** (QString): `false` **StoredImagesDialog/geometry** (QByteArray): `` **TableDialog/geometry** (QByteArray): `` **TodoDialog/geometry** (QByteArray): `` **TodoDialog/mainSplitterState** (QByteArray): `` **TodoDialog/showCompletedItems** (int): `0` **TodoDialog/showDueTodayItemsOnly** (int): `0` **TodoDialog/todoListSelectorSelectedItem** (QString): `NoSi` **UpdateDialog/geometry** (QByteArray): `` **WelcomeDialog/geometry** (QByteArray): `` **acceptAllExternalModifications** (QString): `false` **ai/groq/apiKey** (QString): `` **ai/openai/apiKey** (QString): `` **allowNoteEditing** (bool): `true` **allowOnlyOneAppInstance** (QString): `true` **appMetrics/disableAppHeartbeat** (QString): `true` **appMetrics/disableTracking** (QString): `false` **appMetrics/notificationShown** (QString): `true` **autoReadOnlyMode** (QString): `false` **autoReadOnlyModeTimeout** (int): `30` **automaticNoteFolderDatabaseClosing** (QString): `false` **checkSpelling** (QString): `false` **closeTodoListAfterSave** (QString): `false` **cryptoKey** (qlonglong): `` **currentNoteFolderId** (int): `1` **currentWorkspace** (QString): `040be292-ff43-43b4-a234-58ed527afa85` **cursorWidth** (int): `2` **darkMode** (QString): `true` **darkModeColors** (QString): `true` **darkModeIconTheme** (QString): `true` **darkModeTrayIcon** (QString): `true` **defaultNoteFileExtension** (QString): `md` **demoNotesCreated** (QString): `true` **disableAutomaticUpdateDialog** (QString): `false` **disableSavedSearchesAutoCompletion** (QString): `false` **dockWasInitializedOnce** (QString): `true` **enableNoteTree** (QString): `false` **enableSocketServer** (QString): `true` **enableWebAppSupport** (QString): `false` **externalEditorPath** (QString): `C:\Program Files\Typora\Typora.exe` **fullyHighlightedBlockquotes** (QString): `true` **gitCommitInterval** (int): `30` **gitExecutablePath** (QString): *empty* **gitLogCommand** (QString): *empty* **guiFirstRunInit** (bool): `true` **ignoreAllExternalModifications** (QString): `false` **ignoreAllExternalNoteFolderChanges** (QString): `false` **ignoreNoteSubFolders** (QString): `^\.` **ignoredNoteFiles** (QString): *empty* **imageScaleDown** (QString): `false` **imageScaleDownMaximumHeight** (int): `1024` **imageScaleDownMaximumWidth** (int): `1024` **initialLayoutIdentifier** (QString): `full` **insertTimeFormat** (QString): `dd.MM.yyyy hh:mm` **interfaceFontSize** (int): `22` **interfaceLanguage** (QString): *empty* **interfaceStyle** (QString): `Windows` **internalIconTheme** (QString): `true` **itemHeight** (int): `34` **legacyLinking** (QString): `false` **localTrash/autoCleanupDays** (int): `30` **localTrash/autoCleanupEnabled** (QString): `true` **localTrash/supportEnabled** (QString): `true` **localTrashSplitterSizes** (QByteArray): `` **markdownHighlightingEnabled** (QString): `true` **maxNoteFileSize** (int): `1048576` **navigationPanelAutoSelect** (QString): `true` **navigationPanelHideSearch** (QString): `false` **networking/ignoreSSLErrors** (QString): `true` **networking/proxyType** (int): `2` **newNoteAskHeadline** (QString): `false` **noteEditIsCentralWidget** (QString): `true` **noteFileExtensionList** (QStringList): `md, txt` **noteListPreview** (QString): `false` **noteSaveIntervalTime** (int): `60` **noteSubfoldersPanelDisplayAsFullTree** (QString): `true` **noteSubfoldersPanelHideSearch** (QString): `false` **noteSubfoldersPanelOrder** (int): `0` **noteSubfoldersPanelShowFullPath** (QString): `false` **noteSubfoldersPanelShowNotesRecursively** (QString): `false` **noteSubfoldersPanelShowRootFolderName** (QString): `true` **noteSubfoldersPanelSort** (int): `1` **noteSubfoldersPanelTabsUnsetAllNotesSelection** (QString): `false` **notesPanelOrder** (int): `0` **notesPanelSort** (int): `0` **notesPath** (QString): `C:/Tools/Notizen` **notifyAllExternalModifications** (QString): `true` **overrideInterfaceFontSize** (QString): `true` **ownCloud/supportEnabled** (QString): `true` **ownCloud/todoCalendarBackend** (int): `3` **ownCloud/todoCalendarCalDAVPassword** (QString): `` **ownCloud/todoCalendarCalDAVServerUrl** (QString): *empty* **ownCloud/todoCalendarCalDAVUsername** (QString): *empty* **ownCloud/todoCalendarCloudConnectionId** (int): `1` **ownCloud/todoCalendarDisplayNameList** (QStringList): `NoSi` **ownCloud/todoCalendarEnabledList** (QStringList): `NoSi` **ownCloud/todoCalendarEnabledUrlList** (QStringList): `https://xxxxxx.de/remote.php/dav/calendars/NoSi/nosi/` **ownCloud/todoCalendarUrlList** (QStringList): `https://xxxxxx.de/remote.php/dav/calendars/NoSi/nosi/` **ownCloudInfo/appIsValid** (bool): `true` **ownCloudInfo/connectionErrorMessage** (QString): `Unbekannter Fehler` **ownCloudInfo/notesPathExistsText** (QString): `yes` **ownCloudInfo/serverVersion** (QString): `30.0.1.2` **previousWorkspace** (QString): `initial` **recentNoteFolders** (QStringList): `C:/Tools/Notizen/TH51` **restoreCursorPosition** (QString): `true` **restoreLastNoteAtStartup** (QString): `true` **restoreNoteTabs** (QString): `true` **savedSearches/noteFolder-1** (QStringList): `Note 2024-11-03T07.58.22, Note 2024-11-02T14.11.25, Note 2024-11-02T08.47.37, duckduck, Note 2024-11-02T07.38.12, Note 2024-10-30T10.03.41, Note 2024-10-29T14.30.24, QOwnnotes einrichten, Note 2024-10-29T06.57.17, Note 2024-10-28T13.56.28, Note 2024-10-28T10.59.55, Note 2024-10-28T06.45.39, Note 2024-10-27T17.38.06, Note 2024-10-27T15.49.39, OffSiteEdit` **showMatches** (QString): `true` **showMenuBar** (bool): `true` **showStatusBar** (bool): `true` **showStatusBarNotePath** (QString): `true` **showStatusBarRelativeNotePath** (QString): `false` **spellCheckLanguage** (QString): `auto` **startInReadOnlyMode** (QString): `false` **systemIconTheme** (QString): `false` **taggingShowNotesRecursively** (QString): `false` **tagsPanelHideNoteCount** (QString): `false` **tagsPanelHideSearch** (QString): `true` **tagsPanelOrder** (int): `0` **tagsPanelSort** (int): `0` **todoCalendarSupport** (QString): `true` **toolbar/1/items** (QStringList): `actionFormat_text_bold, actionFormat_text_italic, actionStrike_out_text, actionInsert_code_block, actionInsert_block_quote` **toolbar/1/name** (QString): `formattingToolbar` **toolbar/1/title** (QString): `Formatierungs-Werkzeugleiste` **toolbar/2/items** (QStringList): `actionInsert_text_link, actionInsert_image, actionInsert_current_time` **toolbar/2/name** (QString): `insertingToolbar` **toolbar/2/title** (QString): `Einfügen-Werkzeugleiste` **toolbar/3/items** (QStringList): `action_Encrypt_note, actionEdit_encrypted_note, actionDecrypt_note` **toolbar/3/name** (QString): `encryptionToolbar` **toolbar/3/title** (QString): `Verschlüsselung-Werkzeugleiste` **toolbar/4/items** (QStringList): *empty* **toolbar/4/name** (QString): `aiToolbar` **toolbar/4/title** (QString): `KI-Toolbar` **toolbar/5/items** (QStringList): `actionWorkspaceComboBox, actionStore_as_new_workspace, actionRemove_current_workspace, actionRename_current_workspace, actionSwitch_to_previous_workspace, actionUnlock_panels, , actionToggle_distraction_free_mode, action_Increase_note_text_size, action_Decrease_note_text_size, action_Reset_note_text_size` **toolbar/5/name** (QString): `windowToolbar` **toolbar/5/title** (QString): `Fenster-Werkzeugleiste` **toolbar/6/items** (QStringList): `action_Quit` **toolbar/6/name** (QString): `quitToolbar` **toolbar/6/title** (QString): `Beenden - Symbolleiste` **toolbar/7/items** (QStringList): `action_Quit` **toolbar/7/name** (QString): `quitToolbar` **toolbar/7/title** (QString): `Beenden - Symbolleiste` **toolbar/size** (int): `7` **useNoteFolderButtons** (QString): `false` **useSoftWrapInNoteEditor** (QString): `true` **useUNIXNewline** (QString): `false` **webAppClientService/serverUrl** (QString): `wss://app.qownnotes.org` **webAppClientService/token** (QString): `` **webSocketServerService/bookmarksNoteName** (QString): *empty* **webSocketServerService/bookmarksTag** (QString): `Browsernotiz` **webSocketServerService/commandSnippetsNoteName** (QString): `Commands` **webSocketServerService/commandSnippetsTag** (QString): `commands` **webSocketServerService/port** (int): `22222` **workspace-040be292-ff43-43b4-a234-58ed527afa85/name** (QString): `- Vorschau` **workspace-040be292-ff43-43b4-a234-58ed527afa85/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-040be292-ff43-43b4-a234-58ed527afa85/windowState** (QByteArray): `` **workspace-a15eded2-68e5-4887-911a-433fc724d616/name** (QString): `- Editor` **workspace-a15eded2-68e5-4887-911a-433fc724d616/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-a15eded2-68e5-4887-911a-433fc724d616/windowState** (QByteArray): `` **workspace-initial/name** (QString): `+ Vorschau` **workspace-initial/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-initial/windowState** (QByteArray): `` **workspaces** (QStringList): `initial, 040be292-ff43-43b4-a234-58ed527afa85, a15eded2-68e5-4887-911a-433fc724d616` ## System environment **ALLUSERSPROFILE**: `C:\ProgramData` **APPDATA**: `C:\Users\xxxxxx\AppData\Roaming` **CommonProgramFiles**: `C:\Program Files\Common Files` **CommonProgramFiles(x86)**: `C:\Program Files (x86)\Common Files` **CommonProgramW6432**: `C:\Program Files\Common Files` **COMPUTERNAME**: `NOSI21` **ComSpec**: `C:\windows\system32\cmd.exe` **configsetroot**: `C:\windows\ConfigSetRoot` **DriverData**: `C:\Windows\System32\Drivers\DriverData` **HOMEDRIVE**: `C:` **HOMEPATH**: `\Users\xxxxxx` **LOCALAPPDATA**: `C:\Users\xxxxxx\AppData\Local` **LOGONSERVER**: `\\NOSI21` **NUMBER_OF_PROCESSORS**: `16` **OneDrive**: `C:\Users\xxxxxx\OneDrive` **OS**: `Windows_NT` **Path**: `C:\Program Files (x86)\Embarcadero\Studio\23.0\bin;C:\Program Files (x86)\Embarcadero\Studio\23.0\bin64;C:\Entwicklung\Studio\23.0\bin;C:\Entwicklung\Studio\23.0\bin64;C:\Entwicklung\Embarcadero\Studio\23.0\bin;C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl;C:\Entwicklung\Embarcadero\Studio\23.0\bin64;C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\Win64;C:\Program Files\Common Files\Oracle\Java\javapath;C:\Program Files\AdoptOpenJDK\jdk-8.0.242.08-hotspot\bin;C:\Entwicklung\Studio\22.0\bin;C:\Entwicklung\Studio\22.0\bin64;C:\Program Files (x86)\Embarcadero\Studio\22.0\bin;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl;C:\Program Files (x86)\Embarcadero\Studio\22.0\bin64;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\Win64;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Entwicklung\Windows\Kits\10\Windows Performance Toolkit\;C:\Entwicklung\Git\cmd;C:\PHP8;C:\Program Files\WireGuard\;C:\texlive\2023\bin\windows;C:\Program Files\Wondershare\Wondershare DemoCreator (Deutsch);C:\Program Files\Wondershare\Wondershare DemoCreator (Deutsch);C:\Program Files\Wondershare\Wondershare DemoCreator (Deutsch);C:\Program Files\NVIDIA Corporation\NVIDIA app\NvDLISR;C:\Users\xxxxxx\AppData\Local\Microsoft\WindowsApps;;C:\Users\xxxxxx\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\xxxxxx\AppData\Local\Pandoc\` **PATHEXT**: `.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC` **PROCESSOR_ARCHITECTURE**: `AMD64` **PROCESSOR_IDENTIFIER**: `Intel64 Family 6 Model 167 Stepping 1, GenuineIntel` **PROCESSOR_LEVEL**: `6` **PROCESSOR_REVISION**: `a701` **ProgramData**: `C:\ProgramData` **ProgramFiles**: `C:\Program Files` **ProgramFiles(x86)**: `C:\Program Files (x86)` **ProgramW6432**: `C:\Program Files` **PSModulePath**: `C:\Program Files\WindowsPowerShell\Modules;C:\windows\system32\WindowsPowerShell\v1.0\Modules` **PUBLIC**: `C:\Users\Public` **SESSIONNAME**: `Console` **SystemDrive**: `C:` **SystemRoot**: `C:\windows` **TEMP**: `C:\Users\xxxxxx\AppData\Local\Temp` **TMP**: `C:\Users\xxxxxx\AppData\Local\Temp` **USERDOMAIN**: `NOSI21` **USERDOMAIN_ROAMINGPROFILE**: `NOSI21` **USERNAME**: `xxxxxx` **USERPROFILE**: `C:\Users\xxxxxx` **windir**: `C:\windows` **ZES_ENABLE_SYSMAN**: `1` **ZKA_SIG_HOME**: `C:\Program Files (x86)\REINER SCT\cyberJack`
pbek commented 1 week ago

That would only work (approximately) when you use a mono-typed font. If you don't, then every character has a different width. That "custom size" is only a calculation on the width of one average character.

BsNoSi commented 1 week ago

Sure, it is the average width of a character (m or what ever).

This average width changes with zoom. But the editor width is defined with the average of current zoom and then fixed. Therefore, zooming does not match the average width of the given char count anymore.

To give an extreme example: The average of a character with pixel height of 80 is another than with a pixel height of 20 pixels.

Keeping the line length to the average char count width regardless to the font size would help to estimate the reading/printing length of an article.

Meanwhile, I can help myself, open “custom” after zooming and press OK which “fixes” it.

To be honest, it is probably only a question of expectation. I expected “keep average char count per line”, which is not fulfilled. If you define it as “average width of current font size”, then that is, what it is.

pbek commented 6 days ago

When I zoom in distraction free mode, the margin changes for me. Where did you test the zooming? Did you mention all steps in Steps to reproduce?

BsNoSi commented 6 days ago

Maybe this video helps:

https://github.com/user-attachments/assets/fc30ab85-ec92-426a-9ee4-93161f4113eb

pbek commented 6 days ago

Can you please run QOwnNotes in a new session (see cli-parameters) and then describe step by step what you did to get to that screen?

BsNoSi commented 5 days ago

Sure.

  1. Start
  2. Settings → distraction free mode → off
  3. set a custom margin "x chars"
  4. zoom in/out with mouse wheel → count of chars depends on current width of char (whatever this is), when width is set, not on count of chars.

The application starts in German, I have added comments to clarify what is happening.

https://github.com/user-attachments/assets/eeb8e054-b58d-4601-9fd1-0b832bbf73e1

Summary of the video: Zooming with the mouse wheel breaks down the set →number of characters← of the editor width.

F11 → same behavior: The editor is set with the current character width, but the margins are not adjusted to the set number of characters when the font size is changed by increasing/decreasing zoom.

pbek commented 5 days ago

I see, so you forgot to mention that you also need to toggle a setting, now we are getting somewhere. 😉

BsNoSi commented 5 days ago

😞 I mentioned it myself, producing the second video. I apologize. In distraction free mode it behaves identical (in my case).

pbek commented 4 days ago

24.11.1

pbek commented 4 days ago

There now is a new release, could you please test it and report if it works for you?

BsNoSi commented 3 days ago

👍👍👍 New 24.11.1 fulfills perfectly the very useful fixation of lines to an average line length, regardless to zoom in or out. !TNX!.

pbek commented 3 days ago

Great, thank you for testing!

BsNoSi commented 3 days ago

I think I had less effort with testing.😉 🙏

pbek commented 3 days ago

I think it took longer to find out what you were exactly talking about than to fix it. 😆

BsNoSi commented 3 days ago

It is always difficult to recognize what (supposedly obvious) side information the other side needs in order to view something from the same perspective. Especially with software, that has only been in use for a few days, and therefore the deeper understanding for it is still missing.