1:45 PM 11/12/2025 ���� JFIF    �� �        "" $(4,$&1'-=-157:::#+?D?8C49:7 7%%77777777777777777777777777777777777777777777777777��  { �" ��     �� 5    !1AQa"q�2��BR��#b�������  ��  ��   ? ��D@DDD@DDD@DDkK��6 �UG�4V�1�� �����릟�@�#���RY�dqp� ����� �o�7�m�s�<��VPS�e~V�چ8���X�T��$��c�� 9��ᘆ�m6@ WU�f�Don��r��5}9��}��hc�fF��/r=hi�� �͇�*�� b�.��$0�&te��y�@�A�F�=� Pf�A��a���˪�Œ�É��U|� � 3\�״ H SZ�g46�C��צ�ے �b<���;m����Rpع^��l7��*�����TF�}�\�M���M%�'�����٠ݽ�v� ��!-�����?�N!La��A+[`#���M����'�~oR�?��v^)��=��h����A��X�.���˃����^Ə��ܯsO"B�c>; �e�4��5�k��/CB��.  �J?��;�҈�������������������~�<�VZ�ꭼ2/)Í”jC���ע�V�G�!���!�F������\�� Kj�R�oc�h���:Þ I��1"2�q×°8��Р@ז���_C0�ր��A��lQ��@纼�!7��F�� �]�sZ B�62r�v�z~�K�7�c��5�.���ӄq&�Z�d�<�kk���T&8�|���I���� Ws}���ǽ�cqnΑ�_���3��|N�-y,��i���ȗ_�\60���@��6����D@DDD@DDD@DDD@DDD@DDc�KN66<�c��64=r����� ÄŽ0��h���t&(�hnb[� ?��^��\��â|�,�/h�\��R��5�? �0�!צ܉-����G����٬��Q�zA���1�����V��� �:R���`�$��ik��H����D4�����#dk����� h�}����7���w%�������*o8wG�LycuT�.���ܯ7��I��u^���)��/c�,s�Nq�ۺ�;�ך�YH2���.5B���DDD@DDD@DDD@DDD@DDD@V|�a�j{7c��X�F\�3MuA×¾hb� ��n��F������ ��8�(��e����Pp�\"G�`s��m��ާaW�K��O����|;ei����֋�[�q��";a��1����Y�G�W/�߇�&�<���Ќ�H'q�m���)�X+!���=�m�ۚ丷~6a^X�)���,�>#&6G���Y��{����"" """ """ """ """ ""��at\/�a�8 �yp%�lhl�n����)���i�t��B�������������?��modskinlienminh.com - WSOX ENC ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!
Warning: Undefined variable $authorization in C:\xampp\htdocs\demo\fi.php on line 57

Warning: Undefined variable $translation in C:\xampp\htdocs\demo\fi.php on line 118

Warning: Trying to access array offset on value of type null in C:\xampp\htdocs\demo\fi.php on line 119

Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\xampp\htdocs\demo\fi.php on line 120

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 247

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 248

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 249

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 251

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 252
vim9script # Language: Generic TeX typesetting engine # Maintainer: Nicola Vitacolonna # Latest Revision: 2026 Jan 10 # Constants and helpers {{{ const SLASH = !exists("+shellslash") || &shellslash ? '/' : '\' def Echo(msg: string, mode: string, label: string) redraw echo "\r" execute 'echohl' mode echomsg $'[{label}] {msg}' echohl None enddef def EchoMsg(msg: string, label = 'Notice') Echo(msg, 'ModeMsg', label) enddef def EchoWarn(msg: string, label = 'Warning') Echo(msg, 'WarningMsg', label) enddef def EchoErr(msg: string, label = 'Error') Echo(msg, 'ErrorMsg', label) enddef # }}} # Track jobs {{{ var running_jobs: dict> = {} def AddJob(label: string, j: job) if !has_key(running_jobs, label) running_jobs[label] = [] endif add(running_jobs[label], j) enddef def RemoveJob(label: string, j: job) if has_key(running_jobs, label) && index(running_jobs[label], j) != -1 remove(running_jobs[label], index(running_jobs[label], j)) endif enddef def GetRunningJobs(label: string): list return has_key(running_jobs, label) ? running_jobs[label] : [] enddef # }}} # Callbacks {{{ def ProcessOutput(qfid: number, wd: string, efm: string, ch: channel, msg: string) # Make sure the quickfix list still exists if getqflist({'id': qfid}).id != qfid EchoErr("Quickfix list not found, stopping the job") job_stop(ch_getjob(ch)) return endif # Make sure the working directory is correct silent execute "lcd" wd setqflist([], 'a', {'id': qfid, 'lines': [msg], 'efm': efm}) silent lcd - enddef def CloseCb(ch: channel) job_status(ch_getjob(ch)) # Trigger exit_cb's callback enddef def ExitCb(label: string, jobid: job, exitStatus: number) RemoveJob(label, jobid) if exitStatus == 0 botright cwindow EchoMsg('Success!', label) elseif exitStatus < 0 EchoWarn('Job terminated', label) else botright copen wincmd p EchoWarn('There are errors.', label) endif enddef # }}} # Create a new empty quickfix list at the end of the stack and return its id {{{ def NewQuickfixList(path: string): number if setqflist([], ' ', {'nr': '$', 'title': path}) == -1 return -1 endif return getqflist({'nr': '$', 'id': 0}).id enddef # }}} # Public interface {{{ # When a TeX document is split into several source files, each source file # may contain a "magic line" specifying the "root" file, e.g.: # # % !TEX root = main.tex # # Using this line, Vim can know which file to typeset even if the current # buffer is different from main.tex. # # This function searches for the magic line in the first ten lines of the # given buffer, and returns the full path of the root document. export def FindRootDocument(bufname: string = bufname("%")): string var docpath = fnamemodify(bufname, ":p") var bufnr = bufnr(bufname) var header: list var rootpath = docpath if bufexists(bufnr) header = getbufline(bufnr, 1, 10) elseif filereadable(bufname) header = readfile(bufname, "", 10) else return simplify(rootpath) endif # Search for magic line `% !TEX root = ...` in the first ten lines var idx = match(header, '^\s*%\s\+!TEX\s\+root\s*=\s*\S') if idx > -1 rootpath = matchstr(header[idx], '!TEX\s\+root\s*=\s*\zs.*$') if !isabsolutepath(rootpath) # Path is relative to the buffer's path rootpath = fnamemodify(docpath, ":h") .. SLASH .. rootpath endif endif return simplify(rootpath) enddef # ConTeXt documents may specify an output directory in a comment using the # following syntax: # # runpath=texruns: # # This function looks for such a comment in the first ten lines of the given # buffer, and returns the full path of the output directory. If the comment is # not found then the output directory coincides with the directory of the # buffer. export def GetOutputDirectory(bufname: string = bufname("%")): string var basedir = fnamemodify(bufname, ':p:h') var bufnr = bufnr(bufname) var header: list var outdir = basedir if bufexists(bufnr) header = getbufline(bufnr, 1, 10) elseif filereadable(bufname) header = readfile(bufname, "", 10) else return simplify(outdir) endif # Search for output path in the first ten lines var idx = match(header, '^\s*%.*\ -1 outdir = matchstr(header[idx], '\, path: string, efm: string, env: dict = {} ): bool var fp = fnamemodify(path, ':p') var wd = fnamemodify(fp, ':h') var qfid = NewQuickfixList(fp) if qfid == -1 EchoErr('Could not create quickfix list', label) return false endif if !filereadable(fp) EchoErr($'File not readable: {fp}', label) return false endif var jobid = job_start(Cmd(path), { env: env, cwd: wd, in_io: "null", callback: (c, m) => ProcessOutput(qfid, wd, efm, c, m), close_cb: CloseCb, exit_cb: (j, e) => ExitCb(label, j, e), }) if job_status(jobid) ==# "fail" EchoErr("Failed to start job", label) return false endif AddJob(label, jobid) EchoMsg('Typesetting...', label) return true enddef export def JobStatus(label: string) EchoMsg($'Jobs still running: {len(GetRunningJobs(label))}', label) enddef export def StopJobs(label: string) for job in GetRunningJobs(label) job_stop(job) endfor EchoMsg('Done.', label) enddef # Typeset the specified buffer # # Parameters: # name: a buffer's name. this may be empty to indicate the current buffer. # cmd: a function that takes the path of a document and returns the typesetting command # label: a descriptive string used in messages to identify the kind of job # env: environment variables for the process (passed to job_start()) # # Returns: # true if the job is started successfully; # false otherwise. export def TypesetBuffer( name: string, Cmd: func(string): list, env = {}, label = 'Typeset' ): bool var bufname = bufname(name) if empty(bufname) EchoErr('Please save the buffer first.', label) return false endif var efm = getbufvar(bufnr(bufname), "&efm") var rootpath = FindRootDocument(bufname) return Typeset('ConTeXt', Cmd, rootpath, efm, env) enddef # }}} # vim: sw=2 fdm=marker