.#ý3 open_filter_process( syncprocþ ( autoloadý4 close_filter_process( syncprocþ ( autoloadý3 GPG_Encrypt_ProgramM gpg -c --batch --quiet -o - --passphrase-fd 0þ / custom_variableý3 GPG_Decrypt_Program L gpg --decrypt --batch -o - --passphrase-fd 0þ / custom_variable,* $ file+* # ext+ý $ fileþ , path_extname°# ext # ext$ .gpgA.! 0w/c" -1w‚2 check_is_encrypted,* & prompt ' default+ ' default $ NULLB.ý7 [** buffer default **] ' defaultþ ' sprintf ±& prompt/c! :±& promptý & promptþ % flush* ! s+ °! s.* " ch+ & getkey°" ch " ch" 13A.v/cý " chþ $ char±! s/e ! s A ' default $ NULLBC. ' default°! s/c ! sw‚0 read_mini_hidden,* $ file 1 use_blocal_phrase 1 set_blocal_phrase . confirm_phrase+* 3 default_pass_phrase+ $ NULL°3 default_pass_phraseý $ fileþ - path_basename°$ file 1 use_blocal_phrase 1 set_blocal_phrase! 0ý0 _gpg_pass_phraseþ 1 blocal_var_existsACD.ý0 _gpg_pass_phraseþ 1 create_blocal_var/c 1 use_blocal_phrase.ý 0 _gpg_pass_phraseþ . get_blocal_var°3 default_pass_phrase/c.* ! p+ýý1 Passphrase for %s $ fileþ ' sprintf 3 default_pass_phraseþ 0 read_mini_hidden°! p ! p A. $ NULLw/c 3 default_pass_phrase $ NULLA . confirm_phraseC. ! pý2 Confirm Passphrase $ NULLþ 0 read_mini_hiddenB.ý? Confirmation failed. Try againþ % flushý! 1þ % sleepu/c/c 1 set_blocal_phrase ! p 3 default_pass_phraseBC.! 1ýA Save passphrase as buffer-defaultþ * get_y_or_nA.ý ! p0 _gpg_pass_phraseþ . set_blocal_var/c/c ! pw/e ‚/ get_pass_phrase,* $ file & append+ & append.! 0w/c* ! i+ý $ fileþ 2 check_is_encrypted°! i ! i" -1A.! 0w/c* ! p+ý $ file! 1! 1! 1þ / get_pass_phrase°! p ! p A.! 0w/c* # txt+ ) bufsubstr°# txt* # cmd+ý' %s > %s 3 GPG_Encrypt_Program $ fileþ ' sprintf°# cmd* " fp+ý # cmd! wþ % popen°" fp " fp $ NULLA.ý) %s failed # cmdþ & verror/c." -1ý ! p" \n9 " fpþ % fputsA/." -1ý # txt " fpþ % fputsA/.! 0ý " fpþ & pcloseB/m.ý2 write to %s failed # cmdþ & verror/c! 1w‚7 _write_encrypted_region,* $ file+ý $ file! 0þ 7 _write_encrypted_regionw‚6 write_encrypted_region,* $ file 1 use_blocal_phrase 1 set_blocal_phrase . confirm_phrase+* ! i+ý $ fileþ 2 check_is_encrypted°! i ! i" -1A.! 0w/c! 1ý $ fileþ + file_statusB.! 0w/c* # pid+ýý ' /bin/sh" -c 3 GPG_Decrypt_Program! 9 $ file9à! .þ 3 open_filter_process°# pidý # pidý $ file 1 use_blocal_phrase 1 set_blocal_phrase . confirm_phraseþ / get_pass_phraseþ , send_processý # pid" \nþ , send_processý # pidþ 4 close_filter_processP ! 1w‚6 _insert_encrypted_file,* $ file+ý $ file! 0! 0! 0þ 6 _insert_encrypted_filew‚5 insert_encrypted_file,* $ file+ý $ file! 0! 1! 0þ 6 _insert_encrypted_file.! 1w/c! 0w‚3 read_encrypted_fileý6 _jed_insert_file_hooks}5 insert_encrypted_file þ + add_to_hooký4 _jed_read_file_hooks}3 read_encrypted_fileþ + add_to_hooký7 _jed_write_region_hooks}6 write_encrypted_regionþ . append_to_hook,* # ext+* ! i $ file+ + getbuf_infoPPP°$ fileý $ fileþ 2 check_is_encrypted°! i ! i" -1B.ýý! 0ý $ fileþ & strlený # extþ & strlen:! 2:á $ file!°$ fileýý $ fileþ ) file_typeþ ) mode_hook! 1w/c! 0w‚7 encrypted_set_mode_hooký3 _jed_set_mode_hooks}7 encrypted_set_mode_hookþ + add_to_hook