.#! 62 JED_COMMENT_COLUMN" 40 / custom_variable(! 8 , Comment_Data+ + Struct_Type * Assoc_Type!, Comment_Data,*" 10 $ mode+" 13 $ mode! 0" 32 / extract_elementw" 102 extract_major_mode," 39 & _NARGS." 40 - get_mode_name/b*" 42 ( moden ame+( modename" 44 ( modename 2 extract_major_mode( modename" 46! 2." 48 , Comment_Data ( modename 0 assoc_key_exists." 49 ( modename , Comment_Data!w/c" 51 ( modename & strlow( modename/i" 53 $ NULLw" 370 get_comment_info,*" 77 $ cbe g $ cend % flags+" 79 & _NARGS! 3A." 80 - get_mode_name/c*" 81 $ mode+$ mode*" 83 ! s+" 85$ cbeg$ cend% flags& column! 4" 83! s" 87 $ cbeg ! s$ cbeg" 88 $ cend ! s$ cend" 89 % flags ! s% flags" 90 2 JED_COMMENT_COLUMN ! s& column" 92 ! s $ mode , Comment_Data" 770 set_comment_info,*" 95 & column+" 97 & _NARGS! 1A." 98 - get_mode_name/c*" 99 $ mode+$ mode*# 100 ! s+ $ mode 0 get_comment_info! s# 101 ! s $ NULLB.# 102 & column ! s& column/c" 952 set_comment_colum n,*# 107 ! m+ - get_mode_name! m# 108 ! m 2 extract_major_mode! m*# 109 ! s+ ! m 0 get_comment_info! s# 110 ! s $ NULLA.# 111F No comment strings defined for %s mode ! m & verror/c# 112 ! sw# 1051 _get_comment_info,*# 115 ( beg_mark ( end_mark+*# 117 * max_column+# 119 ( end_mark . goto_user_mark# 120 + what_column* max_column# 121 ( beg_mark . goto_user_mark.# 125 # eol# 126 0 create_user_mark ( end_mark@.v/c# 128 + bskip_white# 129 + what_column * max_column?.# 130 + w hat_column* max_column/c# 131 ) go_down_1/e# 133 * max_columnw# 1152 compute_max_column,# 138! 1 , check_region.# 142 ( pop_spot# 143 * pop_mark_0/n*# 146 $ info+ 1 _get_comment_info$ info*# 147 $ cbeg+ $ info"$ cbeg$ cbeg*# 148 $ cend+ $ info"$ cend$ cend*# 149 % flags+ $ info"% flags% flags*# 151 ( end_mark+ 0 create_user_mark( end_mark# 152 7 exchange_point_and_mark*# 153 ( beg_mark+ 0 create_user_mark( beg_mark*# 154 * indent_col+! 1* indent_col# 156 ( beg_mark ( end_mark A.# 158 ( pop_spot# 159 * pop_mark_0# 160 $ cbeg & insert# 161 $ cend & insertw/c# 165 % flags! 1F.# 167 + what_column* indent_col# 168 + bskip_white# 169 $ bolp.# 170! 1* indent_col/b/.# 174$$ \n * skip_chars# 175 + bskip_white# 1 76 $ bolp.# 178 * skip_white# 179 0 create_user_mark ( end_mark=.# 181 + what_column* indent_col# 182 ( beg_mark . move_user_mark/c/c/d# 187 ( end_mark . goto_user_mark# 188$$ \n + bskip_chars*# 190 - ok_to_pad_end+! 0- ok_to_pad_end# 1 91 0 create_user_mark ( beg_mark?.# 193 ( end_mark . move_user_mark# 194 * pop_mark_0# 195 ) push_mark# 196 * skip_white# 197 $ eolp- ok_to_pad_end/c*# 200 * max_column+! 0* max_column# 201 % flags! 2F $ cend & strlenC.# 202 ( beg_mark ( end_mark 2 compute_max_column $ cbeg & strlen9* max_column/c# 204 ( beg_mark . goto_user_mark# 205 $ cbeg & insert# 206 # bol# 207 0 narrow_to_region.# 211 , widen_region# 212 ( pop_spot/n# 214 # eol# 216 * max_column.# 218 $ trim# 219 + what_column * max_column=.# 220 * max_column + goto_column/c/c# 222 $ cend & insert*# 224 3 comment_blank_lines+ % flags! 4F3 comment_blank_lines.# 228 3 comment_blank_lines.# 230 & down_1.v/b# 232 * skip_white# 233 $ eolp.# 234 * indent_c ol + goto_column/c/.# 238$$ \n * skip_chars# 239 $ eobp.v/c/d# 243 + what_column * indent_col@.# 244 * indent_col + goto_column/c# 246 $ cbeg & insert# 247 # eol# 248 * max_column.# 250 0 create_user_mark ( end_mark=# 251 - ok_to_pad_end D.# 253 $ trim# 254 + what_column * max_column=.# 255 * max_column + goto_column/c/c/c# 258 $ cend & insert/e# 260 , widen_region# 261 ( pop_spot# 136. comment_region,# 266! 1 , check_region*# 267 ( end_mark+ 0 create_user_mark( end_ma rk# 268 7 exchange_point_and_mark# 269 0 narrow_to_region.# 273 , widen_region# 274 ( pop_spot/n*# 277 $ info+ 1 _get_comment_info$ info*# 278 $ cbeg+ $ info"$ cbeg$ cbeg*# 279 $ cend+ $ info"$ cend$ cend*# 280 ' do_trim+ $ info"% flags! 2F' do_trim*# 282 ( len_cbeg+ $ cbeg & strlen( len_cbeg*# 283 ( len_cend+ $ cend & strlen( len_cend.# 287 $ cbeg % ffind.u/b# 290 ( len_cbeg $ deln# 291 # eol# 292 $ cend % bfind.u/b# 295 ( len_cend $ deln# 296 ' do_trim.# 298 * skip_wh ite# 299 $ eolp.# 300 $ trim/c/c/.# 303 & down_1/k# 304 , widen_region# 305 ( pop_spot# 2640 uncomment_region,.# 310 ( pop_spot/n# 311 - push_spot_bol# 312 - push_mark_eol# 313 . comment_region# 314 ( pop_spot# 308, comment_line,.# 319 ( pop_spot/n# 320 - push_spot_bol# 321 - push_mark_eol# 322 0 uncomment_region# 323 ( pop_spot# 317. uncomment_line,# 328" -1" -1 / prefix_argumentB.# 330 8 uncomment_region_or_linew/c# 334 % markp.# 335 . comment_regionw/c*# 337 ! s+ 1 _ge t_comment_info! s# 338 ) push_spot# 339 . bol_skip_white# 340 ! s"$ cbeg * looking_at.# 342 ( pop_spot# 343 . uncomment_linew/c# 345 ( pop_spot# 346 , comment_line# 3266 comment_region_or_line,# 351 % markp.# 352 0 uncomment_region/.# 354 . uncomment_line/d# 3498 uncomment_region_or_line# 358$ html% ! 0 0 set_comment_info# 359$ sgml% ! 0 0 set_comment_info# 360' docbook% ! 0 0 set_comment_info# 361! C# /* # */! 0 0 set_comment _info# 362% SLang" %  ! 0 0 set_comment_info# 363# TeX" %  ! 0 0 set_comment_info# 364% LaTeX" %  ! 0 0 set_comment_info# 365" SH" #  ! 0 0 set_comment_info# 366& matlab" #  ! 0 0 set_comment_info# 367$ perl" #  ! 0 0 set_comment_info# 368' Fortran" C  ! 0 0 set_comment_info# 369$ TPas" { " }! 0 0 set_comment_info# 370# PHP# //  ! 0 0 set_comment_info# 371$ java# /* # */! 0 0 set_comment_info# 372" tm# #%  ! 0 0 set_co mment_info# 373& python" #  ! 0 0 set_comment_info# 374# idl" ;  ! 0 0 set_comment_info# 375$ make" #  ! 0 0 set_comment_info# 377( comments ' provide