typo 3.99.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.DS_Store +0 -0
- data/CHANGELOG +718 -0
- data/MAINTAINERS +30 -0
- data/MIT-LICENSE +21 -0
- data/README +92 -0
- data/Rakefile +10 -0
- data/app/apis/blogger_service.rb +94 -0
- data/app/apis/meta_weblog_service.rb +197 -0
- data/app/apis/movable_type_service.rb +150 -0
- data/app/apis/typo_web_service.rb +26 -0
- data/app/controllers/accounts_controller.rb +52 -0
- data/app/controllers/admin/base_controller.rb +21 -0
- data/app/controllers/admin/blacklist_controller.rb +50 -0
- data/app/controllers/admin/cache_controller.rb +31 -0
- data/app/controllers/admin/categories_controller.rb +64 -0
- data/app/controllers/admin/comments_controller.rb +57 -0
- data/app/controllers/admin/content_controller.rb +147 -0
- data/app/controllers/admin/general_controller.rb +42 -0
- data/app/controllers/admin/pages_controller.rb +50 -0
- data/app/controllers/admin/resources_controller.rb +98 -0
- data/app/controllers/admin/sidebar_controller.rb +74 -0
- data/app/controllers/admin/textfilters_controller.rb +104 -0
- data/app/controllers/admin/themes_controller.rb +20 -0
- data/app/controllers/admin/trackbacks_controller.rb +54 -0
- data/app/controllers/admin/users_controller.rb +41 -0
- data/app/controllers/application.rb +66 -0
- data/app/controllers/articles_controller.rb +218 -0
- data/app/controllers/backend_controller.rb +11 -0
- data/app/controllers/content_controller.rb +98 -0
- data/app/controllers/live_controller.rb +10 -0
- data/app/controllers/redirect_controller.rb +16 -0
- data/app/controllers/sidebar_controller.rb +50 -0
- data/app/controllers/textfilter_controller.rb +22 -0
- data/app/controllers/theme_controller.rb +52 -0
- data/app/controllers/xml_controller.rb +111 -0
- data/app/helpers/accounts_helper.rb +2 -0
- data/app/helpers/admin/base_helper.rb +124 -0
- data/app/helpers/admin/blacklist_helper.rb +2 -0
- data/app/helpers/admin/cache_helper.rb +2 -0
- data/app/helpers/admin/comments_helper.rb +2 -0
- data/app/helpers/admin/content_helper.rb +2 -0
- data/app/helpers/admin/general_helper.rb +2 -0
- data/app/helpers/admin/pages_helper.rb +2 -0
- data/app/helpers/admin/resources_helper.rb +2 -0
- data/app/helpers/admin/sidebar_helper.rb +2 -0
- data/app/helpers/admin/textfilters_helper.rb +2 -0
- data/app/helpers/admin/themes_helper.rb +2 -0
- data/app/helpers/admin/trackbacks_helper.rb +2 -0
- data/app/helpers/admin/users_helper.rb +2 -0
- data/app/helpers/application_helper.rb +92 -0
- data/app/helpers/articles_helper.rb +163 -0
- data/app/helpers/backend_helper.rb +2 -0
- data/app/helpers/content_helper.rb +3 -0
- data/app/helpers/mail_helper.rb +6 -0
- data/app/helpers/redirect_helper.rb +2 -0
- data/app/helpers/sidebar_helper.rb +22 -0
- data/app/helpers/sidebars/plugin_helper.rb +2 -0
- data/app/helpers/text_filter_plugin_helper.rb +2 -0
- data/app/helpers/textfilter_helper.rb +2 -0
- data/app/helpers/theme_helper.rb +23 -0
- data/app/helpers/xml_helper.rb +21 -0
- data/app/models/aggregations/audioscrobbler.rb +54 -0
- data/app/models/aggregations/backpack.rb +57 -0
- data/app/models/aggregations/delicious.rb +57 -0
- data/app/models/aggregations/flickr.rb +89 -0
- data/app/models/aggregations/fortythree.rb +62 -0
- data/app/models/aggregations/magnolia.rb +81 -0
- data/app/models/aggregations/tada.rb +75 -0
- data/app/models/aggregations/technorati.rb +51 -0
- data/app/models/aggregations/upcoming.rb +74 -0
- data/app/models/article.rb +211 -0
- data/app/models/blacklist_pattern.rb +22 -0
- data/app/models/blog.rb +162 -0
- data/app/models/blog_sweeper.rb +23 -0
- data/app/models/category.rb +62 -0
- data/app/models/comment.rb +76 -0
- data/app/models/config_manager.rb +80 -0
- data/app/models/content.rb +222 -0
- data/app/models/content_observer.rb +5 -0
- data/app/models/content_state/base.rb +51 -0
- data/app/models/content_state/draft.rb +40 -0
- data/app/models/content_state/factory.rb +16 -0
- data/app/models/content_state/just_published.rb +47 -0
- data/app/models/content_state/new.rb +45 -0
- data/app/models/content_state/publication_pending.rb +43 -0
- data/app/models/content_state/published.rb +35 -0
- data/app/models/email_notifier.rb +9 -0
- data/app/models/notification_mailer.rb +34 -0
- data/app/models/page.rb +20 -0
- data/app/models/page_cache.rb +29 -0
- data/app/models/ping.rb +129 -0
- data/app/models/redirect.rb +3 -0
- data/app/models/resource.rb +76 -0
- data/app/models/sidebar.rb +32 -0
- data/app/models/simple_cache.rb +37 -0
- data/app/models/tag.rb +63 -0
- data/app/models/text_filter.rb +111 -0
- data/app/models/theme.rb +44 -0
- data/app/models/trackback.rb +51 -0
- data/app/models/trigger.rb +31 -0
- data/app/models/user.rb +113 -0
- data/app/models/web_notifier.rb +7 -0
- data/app/views/accounts/login.rhtml +24 -0
- data/app/views/accounts/logout.rhtml +12 -0
- data/app/views/accounts/signup.rhtml +26 -0
- data/app/views/accounts/welcome.rhtml +13 -0
- data/app/views/admin/base/_recent_comments.rhtml +10 -0
- data/app/views/admin/base/_recent_trackbacks.rhtml +10 -0
- data/app/views/admin/blacklist/_blacklist_patterns.rhtml +16 -0
- data/app/views/admin/blacklist/_form.rhtml +15 -0
- data/app/views/admin/blacklist/_quick_post.rhtml +16 -0
- data/app/views/admin/blacklist/destroy.rhtml +10 -0
- data/app/views/admin/blacklist/edit.rhtml +14 -0
- data/app/views/admin/blacklist/list.rhtml +13 -0
- data/app/views/admin/cache/list.rhtml +8 -0
- data/app/views/admin/categories/_categories.rhtml +14 -0
- data/app/views/admin/categories/_form.rhtml +7 -0
- data/app/views/admin/categories/_quick_post.rhtml +11 -0
- data/app/views/admin/categories/destroy.rhtml +10 -0
- data/app/views/admin/categories/edit.rhtml +13 -0
- data/app/views/admin/categories/list.rhtml +15 -0
- data/app/views/admin/categories/reorder.rhtml +9 -0
- data/app/views/admin/categories/show.rhtml +18 -0
- data/app/views/admin/comments/_form.rhtml +19 -0
- data/app/views/admin/comments/comments.rhtml +4 -0
- data/app/views/admin/comments/destroy.rhtml +11 -0
- data/app/views/admin/comments/edit.rhtml +18 -0
- data/app/views/admin/comments/list.rhtml +31 -0
- data/app/views/admin/comments/new.rhtml +15 -0
- data/app/views/admin/comments/show.rhtml +10 -0
- data/app/views/admin/content/_articles.rhtml +20 -0
- data/app/views/admin/content/_attachment.rhtml +17 -0
- data/app/views/admin/content/_form.rhtml +51 -0
- data/app/views/admin/content/_pages.rhtml +3 -0
- data/app/views/admin/content/_quick_post.rhtml +20 -0
- data/app/views/admin/content/_show_categories.rhtml +9 -0
- data/app/views/admin/content/_show_resources.rhtml +9 -0
- data/app/views/admin/content/destroy.rhtml +11 -0
- data/app/views/admin/content/edit.rhtml +28 -0
- data/app/views/admin/content/list.rhtml +20 -0
- data/app/views/admin/content/new.rhtml +27 -0
- data/app/views/admin/content/preview.rhtml +3 -0
- data/app/views/admin/content/show.rhtml +25 -0
- data/app/views/admin/general/index.rhtml +216 -0
- data/app/views/admin/general/update_database.rhtml +44 -0
- data/app/views/admin/pages/_form.rhtml +19 -0
- data/app/views/admin/pages/_pages.rhtml +18 -0
- data/app/views/admin/pages/_quick_post.rhtml +21 -0
- data/app/views/admin/pages/destroy.rhtml +11 -0
- data/app/views/admin/pages/edit.rhtml +28 -0
- data/app/views/admin/pages/list.rhtml +13 -0
- data/app/views/admin/pages/new.rhtml +24 -0
- data/app/views/admin/pages/preview.rhtml +1 -0
- data/app/views/admin/pages/show.rhtml +14 -0
- data/app/views/admin/resources/_itunes_category_add.rhtml +11 -0
- data/app/views/admin/resources/_itunes_category_edit.rhtml +32 -0
- data/app/views/admin/resources/_metadata_add.rhtml +22 -0
- data/app/views/admin/resources/_metadata_edit.rhtml +22 -0
- data/app/views/admin/resources/_mime_edit.rhtml +8 -0
- data/app/views/admin/resources/_pages.rhtml +3 -0
- data/app/views/admin/resources/_resources.rhtml +40 -0
- data/app/views/admin/resources/destroy.rhtml +11 -0
- data/app/views/admin/resources/list.rhtml +9 -0
- data/app/views/admin/resources/new.rhtml +12 -0
- data/app/views/admin/sidebar/_active.rhtml +14 -0
- data/app/views/admin/sidebar/_actives.rhtml +9 -0
- data/app/views/admin/sidebar/_available.rhtml +5 -0
- data/app/views/admin/sidebar/_availables.rhtml +5 -0
- data/app/views/admin/sidebar/_publish.rhtml +2 -0
- data/app/views/admin/sidebar/_target.rhtml +1 -0
- data/app/views/admin/sidebar/index.rhtml +34 -0
- data/app/views/admin/sidebar/publish.rjs +6 -0
- data/app/views/admin/sidebar/remove.rjs +5 -0
- data/app/views/admin/sidebar/set_active.rjs +10 -0
- data/app/views/admin/textfilters/_form.rhtml +45 -0
- data/app/views/admin/textfilters/_macros.rhtml +16 -0
- data/app/views/admin/textfilters/_textfilters.rhtml +20 -0
- data/app/views/admin/textfilters/destroy.rhtml +10 -0
- data/app/views/admin/textfilters/edit.rhtml +17 -0
- data/app/views/admin/textfilters/list.rhtml +15 -0
- data/app/views/admin/textfilters/macro_help.rhtml +3 -0
- data/app/views/admin/textfilters/new.rhtml +15 -0
- data/app/views/admin/textfilters/preview.rhtml +3 -0
- data/app/views/admin/textfilters/show.rhtml +34 -0
- data/app/views/admin/textfilters/show_help.rhtml +8 -0
- data/app/views/admin/themes/index.rhtml +12 -0
- data/app/views/admin/trackbacks/_form.rhtml +19 -0
- data/app/views/admin/trackbacks/destroy.rhtml +6 -0
- data/app/views/admin/trackbacks/edit.rhtml +14 -0
- data/app/views/admin/trackbacks/list.rhtml +31 -0
- data/app/views/admin/trackbacks/new.rhtml +15 -0
- data/app/views/admin/trackbacks/show.rhtml +14 -0
- data/app/views/admin/users/_form.rhtml +48 -0
- data/app/views/admin/users/_user.rhtml +9 -0
- data/app/views/admin/users/destroy.rhtml +14 -0
- data/app/views/admin/users/edit.rhtml +14 -0
- data/app/views/admin/users/list.rhtml +9 -0
- data/app/views/admin/users/new.rhtml +15 -0
- data/app/views/admin/users/show.rhtml +18 -0
- data/app/views/articles/_article.rhtml +4 -0
- data/app/views/articles/_comment.rhtml +7 -0
- data/app/views/articles/_comment_box.rhtml +43 -0
- data/app/views/articles/_comment_error.rhtml +1 -0
- data/app/views/articles/_trackback.rhtml +7 -0
- data/app/views/articles/archives.rhtml +22 -0
- data/app/views/articles/comment_preview.rhtml +3 -0
- data/app/views/articles/error.rhtml +3 -0
- data/app/views/articles/groupings.rhtml +14 -0
- data/app/views/articles/index.rhtml +11 -0
- data/app/views/articles/read.rhtml +70 -0
- data/app/views/articles/trackback.rxml +5 -0
- data/app/views/articles/view_page.rhtml +3 -0
- data/app/views/layouts/accounts.rhtml +22 -0
- data/app/views/layouts/administration.rhtml +75 -0
- data/app/views/layouts/sidebar.rhtml +40 -0
- data/app/views/live/search.rhtml +10 -0
- data/app/views/notification_mailer/_mail_footer.rhtml +7 -0
- data/app/views/notification_mailer/_mail_header.rhtml +1 -0
- data/app/views/notification_mailer/article.rhtml +6 -0
- data/app/views/notification_mailer/comment.rhtml +11 -0
- data/app/views/notification_mailer/trackback.rhtml +3 -0
- data/app/views/settings/done.rhtml +2 -0
- data/app/views/settings/install.rhtml +12 -0
- data/app/views/shared/_search.rhtml +10 -0
- data/app/views/sidebar/_row.rhtml +1 -0
- data/app/views/sidebar/_sidebar.rhtml +5 -0
- data/app/views/sidebar/display_plugins.rhtml +5 -0
- data/app/views/sidebar/show.rhtml +1 -0
- data/app/views/theme/static_view_test.rhtml +1 -0
- data/app/views/xml/_atom10_item_article.rxml +39 -0
- data/app/views/xml/_atom10_item_comment.rxml +13 -0
- data/app/views/xml/_atom10_item_trackback.rxml +16 -0
- data/app/views/xml/_itunes_item_resource.rxml +30 -0
- data/app/views/xml/_rss20_item_article.rxml +35 -0
- data/app/views/xml/_rss20_item_comment.rxml +7 -0
- data/app/views/xml/_rss20_item_trackback.rxml +7 -0
- data/app/views/xml/atom10_feed.rxml +18 -0
- data/app/views/xml/itunes_feed.rxml +29 -0
- data/app/views/xml/rsd.rxml +19 -0
- data/app/views/xml/rss20_feed.rxml +18 -0
- data/bin/typo +12 -0
- data/cache/META/DATA/ACTION_PARAM/localhost.3000/articles/index/.cache +540 -0
- data/cache/META/DATA/ACTION_PARAM/localhost.3000/articles/permalink/day=09&month=09&title=i-need-a-new-keyboard-and-mouse&year=2005.cache +414 -0
- data/cache/META/META/ACTION_PARAM/localhost.3000/articles/index/.cache +3 -0
- data/cache/META/META/ACTION_PARAM/localhost.3000/articles/permalink/day=09&month=09&title=i-need-a-new-keyboard-and-mouse&year=2005.cache +3 -0
- data/components/plugins/sidebars/aimpresence/content.rhtml +4 -0
- data/components/plugins/sidebars/aimpresence_controller.rb +10 -0
- data/components/plugins/sidebars/amazon/content.rhtml +4 -0
- data/components/plugins/sidebars/amazon_controller.rb +17 -0
- data/components/plugins/sidebars/archives/content.rhtml +11 -0
- data/components/plugins/sidebars/archives_controller.rb +24 -0
- data/components/plugins/sidebars/audioscrobbler/content.rhtml +10 -0
- data/components/plugins/sidebars/audioscrobbler_controller.rb +10 -0
- data/components/plugins/sidebars/backpack/content.rhtml +12 -0
- data/components/plugins/sidebars/backpack_controller.rb +17 -0
- data/components/plugins/sidebars/category/content.rhtml +10 -0
- data/components/plugins/sidebars/category_controller.rb +13 -0
- data/components/plugins/sidebars/delicious/content.rhtml +20 -0
- data/components/plugins/sidebars/delicious_controller.rb +29 -0
- data/components/plugins/sidebars/flickr/content.rhtml +15 -0
- data/components/plugins/sidebars/flickr_controller.rb +16 -0
- data/components/plugins/sidebars/fortythree/content.rhtml +8 -0
- data/components/plugins/sidebars/fortythree_controller.rb +12 -0
- data/components/plugins/sidebars/fortythreeplaces/content.rhtml +8 -0
- data/components/plugins/sidebars/fortythreeplaces_controller.rb +12 -0
- data/components/plugins/sidebars/magnolia/content.rhtml +12 -0
- data/components/plugins/sidebars/magnolia_controller.rb +17 -0
- data/components/plugins/sidebars/recent_comments/content.rhtml +12 -0
- data/components/plugins/sidebars/recent_comments_controller.rb +23 -0
- data/components/plugins/sidebars/static/content.rhtml +2 -0
- data/components/plugins/sidebars/static_controller.rb +23 -0
- data/components/plugins/sidebars/tada/content.rhtml +12 -0
- data/components/plugins/sidebars/tada_controller.rb +12 -0
- data/components/plugins/sidebars/tag/content.rhtml +8 -0
- data/components/plugins/sidebars/tag_controller.rb +18 -0
- data/components/plugins/sidebars/technorati/content.rhtml +8 -0
- data/components/plugins/sidebars/technorati_controller.rb +12 -0
- data/components/plugins/sidebars/upcoming/content.rhtml +8 -0
- data/components/plugins/sidebars/upcoming_controller.rb +11 -0
- data/components/plugins/sidebars/xbox/content.rhtml +2 -0
- data/components/plugins/sidebars/xbox_controller.rb +6 -0
- data/components/plugins/sidebars/xml/content.rhtml +12 -0
- data/components/plugins/sidebars/xml_controller.rb +11 -0
- data/components/plugins/textfilters/amazon_controller.rb +39 -0
- data/components/plugins/textfilters/code_controller.rb +59 -0
- data/components/plugins/textfilters/flickr_controller.rb +75 -0
- data/components/plugins/textfilters/htmlfilter_controller.rb +8 -0
- data/components/plugins/textfilters/lightbox_controller.rb +122 -0
- data/components/plugins/textfilters/macropost_controller.rb +14 -0
- data/components/plugins/textfilters/macropre_controller.rb +14 -0
- data/components/plugins/textfilters/markdown_controller.rb +32 -0
- data/components/plugins/textfilters/none_controller.rb +8 -0
- data/components/plugins/textfilters/smartypants_controller.rb +8 -0
- data/components/plugins/textfilters/sparkline_controller.rb +87 -0
- data/components/plugins/textfilters/textile_controller.rb +8 -0
- data/components/sidebars/README +36 -0
- data/config/boot.rb +44 -0
- data/config/database.yml +17 -0
- data/config/database.yml-pgsql +17 -0
- data/config/database.yml.example +18 -0
- data/config/environment.rb +145 -0
- data/config/environments/development.rb +17 -0
- data/config/environments/production.rb +19 -0
- data/config/environments/test.rb +26 -0
- data/config/iTunes.yml +72 -0
- data/config/lighttpd.conf +46 -0
- data/config/mail.yml +8 -0
- data/config/mail.yml.example +8 -0
- data/config/routes.rb +92 -0
- data/db/DB +0 -0
- data/db/DB.test +0 -0
- data/db/converters/README +14 -0
- data/db/converters/feed.rb +68 -0
- data/db/converters/mt-import.rb +72 -0
- data/db/converters/mt3.rb +172 -0
- data/db/converters/rss.rb +67 -0
- data/db/converters/s9y.rb +182 -0
- data/db/converters/textpattern.rb +137 -0
- data/db/converters/wordpress.rb +187 -0
- data/db/development_structure.sql +691 -0
- data/db/migrate/001_initial_schema.rb +127 -0
- data/db/migrate/002_add_user_email.rb +17 -0
- data/db/migrate/003_add_article_user_id.rb +20 -0
- data/db/migrate/004_add_sidebars.rb +31 -0
- data/db/migrate/005_add_cache_table.rb +20 -0
- data/db/migrate/006_add_pages.rb +17 -0
- data/db/migrate/007_add_permalink.rb +36 -0
- data/db/migrate/008_add_page_title.rb +9 -0
- data/db/migrate/009_add_article_guid.rb +10 -0
- data/db/migrate/010_add_tags.rb +19 -0
- data/db/migrate/011_add_article_id.rb +17 -0
- data/db/migrate/012_enlarge_settings.rb +11 -0
- data/db/migrate/013_add_textfilters.rb +33 -0
- data/db/migrate/014_move_text_filter_to_text_filter_id.rb +43 -0
- data/db/migrate/015_convert_mysql_to_innodb.rb +19 -0
- data/db/migrate/016_fix_is_primary_postgres.rb +19 -0
- data/db/migrate/017_add_comment_user_id.rb +23 -0
- data/db/migrate/018_add_guids.rb +13 -0
- data/db/migrate/019_add_whiteboards_to_content.rb +15 -0
- data/db/migrate/020_superclass_articles.rb +167 -0
- data/db/migrate/021_superclass_comments.rb +94 -0
- data/db/migrate/022_superclass_trackbacks.rb +71 -0
- data/db/migrate/023_superclass_pages.rb +64 -0
- data/db/migrate/024_cleanup_contents.rb +54 -0
- data/db/migrate/025_add_itunes_metadata.rb +29 -0
- data/db/migrate/026_add_redirect_table.rb +13 -0
- data/db/migrate/027_set_comment_published_flag.rb +19 -0
- data/db/migrate/028_rename_redirect_to.rb +12 -0
- data/db/migrate/029_add_user_notification.rb +29 -0
- data/db/migrate/030_index_sessions.rb +9 -0
- data/db/migrate/031_add_notifications_table.rb +14 -0
- data/db/migrate/032_add_jabber_notification.rb +11 -0
- data/db/migrate/033_add_count_caching.rb +34 -0
- data/db/migrate/034_boolify_published.rb +36 -0
- data/db/migrate/035_boolify_content_allow_foo.rb +36 -0
- data/db/migrate/036_add_tag_display_name.rb +53 -0
- data/db/migrate/037_enlarge_ip_field.rb +9 -0
- data/db/migrate/038_add_blog_object.rb +52 -0
- data/db/migrate/039_serialize_blog_attributes.rb +160 -0
- data/db/migrate/040_attach_content_to_blog.rb +28 -0
- data/db/migrate/041_fixup_default_sidebars.rb +18 -0
- data/db/migrate/042_remove_sidebar_staged_config.rb +22 -0
- data/db/migrate/043_create_triggers.rb +14 -0
- data/db/migrate/044_add_published_at_to_content.rb +18 -0
- data/db/migrate/045_fix_contents_published_default.rb +9 -0
- data/db/migrate/046_fixup_forthcoming_publications.rb +40 -0
- data/db/schema.mysql-v3.sql +218 -0
- data/db/schema.mysql.sql +218 -0
- data/db/schema.postgresql.sql +218 -0
- data/db/schema.rb +169 -0
- data/db/schema.sqlite.sql +218 -0
- data/db/schema.sqlserver.sql +232 -0
- data/db/schema_version +1 -0
- data/db/scripts/fix_permalinks.rb +5 -0
- data/db/updates/update.168.to.200.mysql.sql +33 -0
- data/db/updates/update.168.to.200.psql.sql +30 -0
- data/doc/Installer.txt +55 -0
- data/doc/README_FOR_APP +2 -0
- data/installer/rails-installer.rb +488 -0
- data/installer/rails_installer_defaults.yml +4 -0
- data/installer/typo-installer.rb +35 -0
- data/lib/backpack_api.rb +202 -0
- data/lib/bare_migration.rb +142 -0
- data/lib/email_notify.rb +32 -0
- data/lib/format.rb +19 -0
- data/lib/generators/sidebar/sidebar_generator.rb +13 -0
- data/lib/generators/sidebar/templates/components/plugins/sidebars/controller_template.rb +20 -0
- data/lib/generators/sidebar/templates/components/plugins/sidebars/views/content_template.rhtml +4 -0
- data/lib/jabber_notify.rb +32 -0
- data/lib/login_system.rb +85 -0
- data/lib/migrator.rb +28 -0
- data/lib/rails_patch/active_record.rb +36 -0
- data/lib/rails_patch/components.rb +14 -0
- data/lib/sidebars/component_plugin.rb +5 -0
- data/lib/sidebars/plugin.rb +241 -0
- data/lib/spam_protection.rb +126 -0
- data/lib/tasks/release.rake +171 -0
- data/lib/tasks/schemas.rake +6 -0
- data/lib/tasks/sweep_cache.rake +6 -0
- data/lib/text_filter_plugin.rb +97 -0
- data/lib/transforms.rb +26 -0
- data/lib/typo_guid.rb +10 -0
- data/lib/typo_plugins.rb +19 -0
- data/lib/typo_version.rb +1 -0
- data/lib/xmlrpc_fix.rb +13 -0
- data/public/.htaccess +34 -0
- data/public/404.html +8 -0
- data/public/500.html +8 -0
- data/public/dispatch.cgi +10 -0
- data/public/dispatch.fcgi +24 -0
- data/public/dispatch.rb +10 -0
- data/public/favicon.ico +0 -0
- data/public/images/admin/dot-vertical.gif +0 -0
- data/public/images/admin/h-tile.gif +0 -0
- data/public/images/admin/hdr-tile.gif +0 -0
- data/public/images/admin/toggle.gif +0 -0
- data/public/images/bg.jpg +0 -0
- data/public/images/bgcolor.jpg +0 -0
- data/public/images/body_bg.png +0 -0
- data/public/images/branding_bg.png +0 -0
- data/public/images/branding_logo.png +0 -0
- data/public/images/checked.gif +0 -0
- data/public/images/content_bg.png +0 -0
- data/public/images/delete.png +0 -0
- data/public/images/footer.jpg +0 -0
- data/public/images/footer.png +0 -0
- data/public/images/global_bg.png +0 -0
- data/public/images/global_logo.png +0 -0
- data/public/images/go.png +0 -0
- data/public/images/header.jpg +0 -0
- data/public/images/loading.gif +0 -0
- data/public/images/not-checked copy.gif +0 -0
- data/public/images/not-checked.gif +0 -0
- data/public/images/overlay.png +0 -0
- data/public/images/powered.gif +0 -0
- data/public/images/section_bg.png +0 -0
- data/public/images/sections_bg.png +0 -0
- data/public/images/sections_hilite.png +0 -0
- data/public/images/sections_hover.png +0 -0
- data/public/images/spinner-blue.gif +0 -0
- data/public/images/spinner.gif +0 -0
- data/public/images/spot-header.gif +0 -0
- data/public/images/spot-title.gif +0 -0
- data/public/images/x-ed.gif +0 -0
- data/public/javascripts/application.js +2 -0
- data/public/javascripts/controls.js +815 -0
- data/public/javascripts/cookies.js +60 -0
- data/public/javascripts/dragdrop.js +724 -0
- data/public/javascripts/effects.js +953 -0
- data/public/javascripts/lightbox.js +348 -0
- data/public/javascripts/prototype.js +1985 -0
- data/public/javascripts/scriptaculous.js +47 -0
- data/public/javascripts/slider.js +258 -0
- data/public/javascripts/typo.js +85 -0
- data/public/robots.txt +2 -0
- data/public/stylesheets/administration.css +585 -0
- data/public/stylesheets/lightbox.css +22 -0
- data/public/stylesheets/rss.css +54 -0
- data/public/stylesheets/user-styles.css +0 -0
- data/script/about +3 -0
- data/script/benchmarker +19 -0
- data/script/breakpointer +3 -0
- data/script/console +3 -0
- data/script/destroy +3 -0
- data/script/generate +3 -0
- data/script/lighttpd +2 -0
- data/script/logreport +79 -0
- data/script/migrate +31 -0
- data/script/performance/benchmarker +3 -0
- data/script/performance/profiler +3 -0
- data/script/plugin +3 -0
- data/script/process/reaper +3 -0
- data/script/process/spawner +3 -0
- data/script/process/spinner +3 -0
- data/script/profiler +34 -0
- data/script/runner +3 -0
- data/script/server +3 -0
- data/script/spacecheck +40 -0
- data/test/fixtures/articles_categories.yml +31 -0
- data/test/fixtures/articles_tags.yml +19 -0
- data/test/fixtures/blacklist_patterns.yml +10 -0
- data/test/fixtures/blogs.yml +74 -0
- data/test/fixtures/categories.yml +35 -0
- data/test/fixtures/contents.yml +297 -0
- data/test/fixtures/notification_mailer/article +3 -0
- data/test/fixtures/notification_mailer/comment +3 -0
- data/test/fixtures/notification_mailer/trackback +3 -0
- data/test/fixtures/notifications.yml +0 -0
- data/test/fixtures/page_caches.yml +7 -0
- data/test/fixtures/redirects.yml +13 -0
- data/test/fixtures/resources.yml +24 -0
- data/test/fixtures/sidebars.yml +5 -0
- data/test/fixtures/tags.yml +13 -0
- data/test/fixtures/text_filters.yml +42 -0
- data/test/fixtures/triggers.yml +1 -0
- data/test/fixtures/users.yml +56 -0
- data/test/functional/accounts_controller_test.rb +82 -0
- data/test/functional/admin/article_preview_test.rb +67 -0
- data/test/functional/admin/blacklist_controller_test.rb +63 -0
- data/test/functional/admin/categories_controller_test.rb +112 -0
- data/test/functional/admin/comments_controller_test.rb +78 -0
- data/test/functional/admin/content_controller_test.rb +234 -0
- data/test/functional/admin/general_controller_test.rb +26 -0
- data/test/functional/admin/pages_controller_test.rb +103 -0
- data/test/functional/admin/resources_controller_test.rb +49 -0
- data/test/functional/admin/textfilters_controller_test.rb +29 -0
- data/test/functional/admin/themes_controller_test.rb +34 -0
- data/test/functional/admin/trackbacks_controller_test.rb +76 -0
- data/test/functional/admin/users_controller_test.rb +72 -0
- data/test/functional/articles_controller_test.rb +525 -0
- data/test/functional/backend_controller_test.rb +273 -0
- data/test/functional/redirect_controller_test.rb +40 -0
- data/test/functional/textfilter_controller_test.rb +275 -0
- data/test/functional/theme_controller_test.rb +45 -0
- data/test/functional/xml_controller_test.rb +353 -0
- data/test/mocks/test/dns_mock.rb +13 -0
- data/test/mocks/test/flickr_mock.rb +30 -0
- data/test/mocks/test/http_mock.rb +38 -0
- data/test/mocks/test/theme_mock.rb +5 -0
- data/test/mocks/test/xmlrpc_mock.rb +27 -0
- data/test/mocks/themes/123-numbers-in-path/about.markdown +0 -0
- data/test/mocks/themes/CamelCaseDirectory/about.markdown +0 -0
- data/test/mocks/themes/azure/about.markdown +5 -0
- data/test/mocks/themes/azure/layouts/default.rhtml +50 -0
- data/test/mocks/themes/azure/preview.png +0 -0
- data/test/mocks/themes/azure/views/theme/static_view_test.rhtml +1 -0
- data/test/mocks/themes/i-have-special-chars/about.markdown +0 -0
- data/test/test_helper.rb +95 -0
- data/test/unit/article_test.rb +245 -0
- data/test/unit/assumptions_tests.rb +54 -0
- data/test/unit/audioscrobbler_test.rb +132 -0
- data/test/unit/blacklist_pattern_test.rb +14 -0
- data/test/unit/blog_test.rb +83 -0
- data/test/unit/category_test.rb +37 -0
- data/test/unit/comment_test.rb +117 -0
- data/test/unit/configuration_test.rb +21 -0
- data/test/unit/content_state/factory_test.rb +84 -0
- data/test/unit/delicious_test.rb +96 -0
- data/test/unit/flickr_test.rb +134 -0
- data/test/unit/fortythree_test.rb +66 -0
- data/test/unit/magnolia_test.rb +87 -0
- data/test/unit/metafragment_test.rb +63 -0
- data/test/unit/notification_mailer_test.rb +55 -0
- data/test/unit/observer_test.rb +40 -0
- data/test/unit/page_cache_test.rb +34 -0
- data/test/unit/page_test.rb +25 -0
- data/test/unit/ping_test.rb +111 -0
- data/test/unit/redirect_test.rb +19 -0
- data/test/unit/resource_test.rb +71 -0
- data/test/unit/sidebar_test.rb +14 -0
- data/test/unit/tag_test.rb +66 -0
- data/test/unit/text_filter_test.rb +126 -0
- data/test/unit/theme_test.rb +44 -0
- data/test/unit/trackback_test.rb +45 -0
- data/test/unit/trigger_test.rb +40 -0
- data/test/unit/user_test.rb +111 -0
- data/themes/azure/about.markdown +5 -0
- data/themes/azure/images/bg-tile.gif +0 -0
- data/themes/azure/images/bracket.gif +0 -0
- data/themes/azure/images/bullet.gif +0 -0
- data/themes/azure/images/hdr.gif +0 -0
- data/themes/azure/images/q-close.gif +0 -0
- data/themes/azure/images/q-open.gif +0 -0
- data/themes/azure/images/sbar-tile.gif +0 -0
- data/themes/azure/images/spinner.gif +0 -0
- data/themes/azure/images/xlink.gif +0 -0
- data/themes/azure/layouts/default.rhtml +50 -0
- data/themes/azure/preview.png +0 -0
- data/themes/azure/stylesheets/azure.css +436 -0
- data/themes/azure/stylesheets/print.css +30 -0
- data/themes/azure/views/theme/static_view_test.rhtml +1 -0
- data/vendor/akismet/Akismet.rb +140 -0
- data/vendor/bluecloth/CHANGES +366 -0
- data/vendor/bluecloth/LICENSE +340 -0
- data/vendor/bluecloth/README +99 -0
- data/vendor/bluecloth/bin/bluecloth +83 -0
- data/vendor/bluecloth/install.rb +150 -0
- data/vendor/bluecloth/lib/bluecloth.rb +1144 -0
- data/vendor/bluecloth/test.rb +117 -0
- data/vendor/bluecloth/tests/00_Class.tests.rb +71 -0
- data/vendor/bluecloth/tests/05_Markdown.tests.rb +1527 -0
- data/vendor/bluecloth/tests/10_Bug.tests.rb +57 -0
- data/vendor/bluecloth/tests/15_Contrib.tests.rb +132 -0
- data/vendor/bluecloth/tests/bctestcase.rb +274 -0
- data/vendor/bluecloth/tests/data/antsugar.txt +34 -0
- data/vendor/bluecloth/tests/data/ml-announce.txt +17 -0
- data/vendor/bluecloth/tests/data/re-overflow.txt +67 -0
- data/vendor/bluecloth/tests/data/re-overflow2.txt +281 -0
- data/vendor/bluecloth/utils.rb +553 -0
- data/vendor/flickr/Rakefile +36 -0
- data/vendor/flickr/flickr.rb +490 -0
- data/vendor/flickr/index.html +129 -0
- data/vendor/flickr/test_flickr.rb +173 -0
- data/vendor/jabber4r/CHANGES +8 -0
- data/vendor/jabber4r/LICENSE.txt +12 -0
- data/vendor/jabber4r/README +180 -0
- data/vendor/jabber4r/Rakefile.rb +143 -0
- data/vendor/jabber4r/lib/jabber4r/jabber4r.rb +22 -0
- data/vendor/jabber4r/lib/jabber4r/jid.rb +93 -0
- data/vendor/jabber4r/lib/jabber4r/protocol.rb +1384 -0
- data/vendor/jabber4r/lib/jabber4r/rexml_1.8_patch.rb +16 -0
- data/vendor/jabber4r/lib/jabber4r/roster.rb +322 -0
- data/vendor/jabber4r/lib/jabber4r/session.rb +615 -0
- data/vendor/jabber4r/lib/jabber4r/vcard.rb +42 -0
- data/vendor/plugins/expiring_action_cache/init.rb +2 -0
- data/vendor/plugins/expiring_action_cache/lib/actionparamcache.rb +113 -0
- data/vendor/plugins/expiring_action_cache/lib/metafragment.rb +46 -0
- data/vendor/plugins/upload_progress/CHANGELOG +3 -0
- data/vendor/plugins/upload_progress/MIT-LICENSE +20 -0
- data/vendor/plugins/upload_progress/README +45 -0
- data/vendor/plugins/upload_progress/Rakefile +23 -0
- data/vendor/plugins/upload_progress/init.rb +7 -0
- data/vendor/plugins/upload_progress/lib/multipart_progress.rb +169 -0
- data/vendor/plugins/upload_progress/lib/progress.rb +145 -0
- data/vendor/plugins/upload_progress/lib/upload_progress.rb +303 -0
- data/vendor/plugins/upload_progress/lib/upload_progress_helper.rb +424 -0
- data/vendor/plugins/upload_progress/public/stylesheets/upload_progress.css +21 -0
- data/vendor/plugins/upload_progress/test/multipart_progress_testx.rb +364 -0
- data/vendor/plugins/upload_progress/test/upload_progress_helper_testx.rb +134 -0
- data/vendor/plugins/upload_progress/test/upload_progress_testx.rb +88 -0
- data/vendor/redcloth/RedCloth.gemspec +52 -0
- data/vendor/redcloth/bin/redcloth +3 -0
- data/vendor/redcloth/doc/CHANGELOG +160 -0
- data/vendor/redcloth/doc/COPYING +25 -0
- data/vendor/redcloth/doc/README +106 -0
- data/vendor/redcloth/doc/REFERENCE +216 -0
- data/vendor/redcloth/doc/make.rb +359 -0
- data/vendor/redcloth/install.rb +1032 -0
- data/vendor/redcloth/lib/redcloth.rb +1130 -0
- data/vendor/redcloth/run-tests.rb +28 -0
- data/vendor/redcloth/setup.rb +1376 -0
- data/vendor/redcloth/tests/code.yml +105 -0
- data/vendor/redcloth/tests/hard_breaks.yml +26 -0
- data/vendor/redcloth/tests/images.yml +171 -0
- data/vendor/redcloth/tests/instiki.yml +39 -0
- data/vendor/redcloth/tests/links.yml +155 -0
- data/vendor/redcloth/tests/lists.yml +77 -0
- data/vendor/redcloth/tests/markdown.yml +218 -0
- data/vendor/redcloth/tests/poignant.yml +64 -0
- data/vendor/redcloth/tests/table.yml +198 -0
- data/vendor/redcloth/tests/textism.yml +406 -0
- data/vendor/ruby-mp3info/lib/mp3info.rb +720 -0
- data/vendor/rubypants/README +114 -0
- data/vendor/rubypants/Rakefile +55 -0
- data/vendor/rubypants/html/classes/RubyPants.html +924 -0
- data/vendor/rubypants/html/created.rid +1 -0
- data/vendor/rubypants/html/files/README.html +248 -0
- data/vendor/rubypants/html/files/rubypants_rb.html +125 -0
- data/vendor/rubypants/html/fr_class_index.html +27 -0
- data/vendor/rubypants/html/fr_file_index.html +28 -0
- data/vendor/rubypants/html/fr_method_index.html +38 -0
- data/vendor/rubypants/html/index.html +24 -0
- data/vendor/rubypants/html/rdoc-style.css +172 -0
- data/vendor/rubypants/install.rb +9 -0
- data/vendor/rubypants/rubypants.rb +490 -0
- data/vendor/rubypants/test_rubypants.rb +162 -0
- data/vendor/sparklines/README.txt +47 -0
- data/vendor/sparklines/USAGE +14 -0
- data/vendor/sparklines/lib/sparklines.rb +435 -0
- data/vendor/sparklines/samples/sparklinestest.rb +26 -0
- data/vendor/sparklines/sparklines_generator.rb +9 -0
- data/vendor/sparklines/templates/sparklines_controller.rb +30 -0
- data/vendor/sparklines/templates/sparklines_helper.rb +30 -0
- data/vendor/syntax/LICENSE +27 -0
- data/vendor/syntax/NEWS +16 -0
- data/vendor/syntax/README +38 -0
- data/vendor/syntax/Rakefile +194 -0
- data/vendor/syntax/api/classes/Syntax.html +173 -0
- data/vendor/syntax/api/classes/Syntax/Convertors.html +91 -0
- data/vendor/syntax/api/classes/Syntax/Convertors/Abstract.html +159 -0
- data/vendor/syntax/api/classes/Syntax/Convertors/HTML.html +149 -0
- data/vendor/syntax/api/classes/Syntax/Default.html +123 -0
- data/vendor/syntax/api/classes/Syntax/Ruby.html +319 -0
- data/vendor/syntax/api/classes/Syntax/Token.html +151 -0
- data/vendor/syntax/api/classes/Syntax/Tokenizer.html +324 -0
- data/vendor/syntax/api/classes/Syntax/Version.html +109 -0
- data/vendor/syntax/api/classes/Syntax/XML.html +205 -0
- data/vendor/syntax/api/classes/Syntax/YAML.html +189 -0
- data/vendor/syntax/api/created.rid +1 -0
- data/vendor/syntax/api/files/README.html +155 -0
- data/vendor/syntax/api/files/lib/syntax/common_rb.html +96 -0
- data/vendor/syntax/api/files/lib/syntax/convertors/abstract_rb.html +96 -0
- data/vendor/syntax/api/files/lib/syntax/convertors/html_rb.html +96 -0
- data/vendor/syntax/api/files/lib/syntax/lang/ruby_rb.html +96 -0
- data/vendor/syntax/api/files/lib/syntax/lang/xml_rb.html +96 -0
- data/vendor/syntax/api/files/lib/syntax/lang/yaml_rb.html +96 -0
- data/vendor/syntax/api/files/lib/syntax/version_rb.html +92 -0
- data/vendor/syntax/api/files/lib/syntax_rb.html +96 -0
- data/vendor/syntax/api/fr_class_index.html +56 -0
- data/vendor/syntax/api/fr_file_index.html +54 -0
- data/vendor/syntax/api/fr_method_index.html +65 -0
- data/vendor/syntax/api/index.html +26 -0
- data/vendor/syntax/api/rdoc-style.css +175 -0
- data/vendor/syntax/doc/manual-html/chapter-1.html +198 -0
- data/vendor/syntax/doc/manual-html/chapter-2.html +262 -0
- data/vendor/syntax/doc/manual-html/chapter-3.html +266 -0
- data/vendor/syntax/doc/manual-html/chapter-4.html +267 -0
- data/vendor/syntax/doc/manual-html/index.html +152 -0
- data/vendor/syntax/doc/manual-html/stylesheets/manual.css +270 -0
- data/vendor/syntax/doc/manual-html/stylesheets/ruby.css +17 -0
- data/vendor/syntax/doc/manual/chapter.erb +38 -0
- data/vendor/syntax/doc/manual/example.erb +18 -0
- data/vendor/syntax/doc/manual/index.erb +29 -0
- data/vendor/syntax/doc/manual/manual.rb +311 -0
- data/vendor/syntax/doc/manual/manual.yml +43 -0
- data/vendor/syntax/doc/manual/page.erb +87 -0
- data/vendor/syntax/doc/manual/parts/0000.txt +5 -0
- data/vendor/syntax/doc/manual/parts/0001.txt +16 -0
- data/vendor/syntax/doc/manual/parts/0002.txt +24 -0
- data/vendor/syntax/doc/manual/parts/0003.txt +6 -0
- data/vendor/syntax/doc/manual/parts/0004.txt +32 -0
- data/vendor/syntax/doc/manual/parts/0005.txt +18 -0
- data/vendor/syntax/doc/manual/parts/0006.txt +62 -0
- data/vendor/syntax/doc/manual/parts/0007.txt +3 -0
- data/vendor/syntax/doc/manual/parts/0008.txt +5 -0
- data/vendor/syntax/doc/manual/parts/0009.txt +29 -0
- data/vendor/syntax/doc/manual/parts/0010.txt +21 -0
- data/vendor/syntax/doc/manual/stylesheets/manual.css +270 -0
- data/vendor/syntax/doc/manual/stylesheets/ruby.css +17 -0
- data/vendor/syntax/doc/manual/tutorial.erb +30 -0
- data/vendor/syntax/lib/syntax.rb +38 -0
- data/vendor/syntax/lib/syntax/common.rb +163 -0
- data/vendor/syntax/lib/syntax/convertors/abstract.rb +27 -0
- data/vendor/syntax/lib/syntax/convertors/html.rb +51 -0
- data/vendor/syntax/lib/syntax/lang/ruby.rb +317 -0
- data/vendor/syntax/lib/syntax/lang/xml.rb +108 -0
- data/vendor/syntax/lib/syntax/lang/yaml.rb +105 -0
- data/vendor/syntax/lib/syntax/version.rb +9 -0
- data/vendor/syntax/setup.rb +1331 -0
- data/vendor/syntax/syntax.gemspec +24 -0
- data/vendor/syntax/test/ALL-TESTS.rb +5 -0
- data/vendor/syntax/test/syntax/tc_ruby.rb +871 -0
- data/vendor/syntax/test/syntax/tc_xml.rb +202 -0
- data/vendor/syntax/test/syntax/tc_yaml.rb +228 -0
- data/vendor/syntax/test/syntax/tokenizer_testcase.rb +40 -0
- data/vendor/syntax/test/tc_syntax.rb +22 -0
- data/vendor/uuidtools/CHANGELOG +4 -0
- data/vendor/uuidtools/README +13 -0
- data/vendor/uuidtools/install.rb +30 -0
- data/vendor/uuidtools/lib/uuidtools.rb +555 -0
- data/vendor/uuidtools/rakefile +112 -0
- metadata +1022 -0
@@ -0,0 +1,319 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
<html>
|
6
|
+
<head>
|
7
|
+
<title>Class: Syntax::Ruby</title>
|
8
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
9
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
10
|
+
|
11
|
+
<script language="JavaScript" type="text/javascript">
|
12
|
+
// <![CDATA[
|
13
|
+
|
14
|
+
function toggleSource( id )
|
15
|
+
{
|
16
|
+
var elem
|
17
|
+
var link
|
18
|
+
|
19
|
+
if( document.getElementById )
|
20
|
+
{
|
21
|
+
elem = document.getElementById( id )
|
22
|
+
link = document.getElementById( "l_" + id )
|
23
|
+
}
|
24
|
+
else if ( document.all )
|
25
|
+
{
|
26
|
+
elem = eval( "document.all." + id )
|
27
|
+
link = eval( "document.all.l_" + id )
|
28
|
+
}
|
29
|
+
else
|
30
|
+
return false;
|
31
|
+
|
32
|
+
if( elem.style.display == "block" )
|
33
|
+
{
|
34
|
+
elem.style.display = "none"
|
35
|
+
link.innerHTML = "show source"
|
36
|
+
}
|
37
|
+
else
|
38
|
+
{
|
39
|
+
elem.style.display = "block"
|
40
|
+
link.innerHTML = "hide source"
|
41
|
+
}
|
42
|
+
}
|
43
|
+
|
44
|
+
function openCode( url )
|
45
|
+
{
|
46
|
+
window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
|
47
|
+
}
|
48
|
+
// ]]>
|
49
|
+
</script>
|
50
|
+
</head>
|
51
|
+
|
52
|
+
<body>
|
53
|
+
<table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
|
54
|
+
<td class="file-title"><span class="file-title-prefix">Class</span><br />Syntax::Ruby</td>
|
55
|
+
<td align="right">
|
56
|
+
<table cellspacing=0 cellpadding=2>
|
57
|
+
<tr valign="top">
|
58
|
+
<td>In:</td>
|
59
|
+
<td>
|
60
|
+
<a href="../../files/lib/syntax/lang/ruby_rb.html">lib/syntax/lang/ruby.rb</a>
|
61
|
+
</td>
|
62
|
+
</tr>
|
63
|
+
<tr>
|
64
|
+
<td>Parent:</td>
|
65
|
+
<td>
|
66
|
+
<a href="Tokenizer.html">
|
67
|
+
Tokenizer
|
68
|
+
</a>
|
69
|
+
</td>
|
70
|
+
</tr>
|
71
|
+
</table>
|
72
|
+
</td>
|
73
|
+
</tr>
|
74
|
+
</table>
|
75
|
+
<!-- banner header -->
|
76
|
+
|
77
|
+
<div id="bodyContent">
|
78
|
+
<div id="content">
|
79
|
+
|
80
|
+
<div class="description"><p>
|
81
|
+
A tokenizer for the <a href="Ruby.html">Ruby</a> language. It recognizes
|
82
|
+
all common syntax (and some less common syntax) but because it is not a
|
83
|
+
true lexer, it will make mistakes on some ambiguous cases.
|
84
|
+
</p>
|
85
|
+
</div>
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
<div class="sectiontitle">Methods</div>
|
90
|
+
<ul>
|
91
|
+
<li><a href="#M000008">setup</a></li>
|
92
|
+
<li><a href="#M000009">step</a></li>
|
93
|
+
</ul>
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
|
98
|
+
<div class="sectiontitle">Constants</div>
|
99
|
+
<table border='0' cellpadding='5'>
|
100
|
+
<tr valign='top'>
|
101
|
+
<td class="attr-name">KEYWORDS</td>
|
102
|
+
<td>=</td>
|
103
|
+
<td class="attr-value">%w{if then elsif else end begin do rescue ensure while for class module def yield raise until unless and or not when case super undef break next redo retry in return alias defined?}</td>
|
104
|
+
</tr>
|
105
|
+
<tr valign='top'>
|
106
|
+
<td> </td>
|
107
|
+
<td colspan="2" class="attr-desc">
|
108
|
+
The list of all identifiers recognized as keywords.
|
109
|
+
|
110
|
+
</td>
|
111
|
+
</tr>
|
112
|
+
</table>
|
113
|
+
|
114
|
+
|
115
|
+
<div class="sectiontitle">Public Instance methods</div>
|
116
|
+
<div class="method">
|
117
|
+
<div class="title">
|
118
|
+
<a name="M000008"></a><b>setup</b>()
|
119
|
+
</div>
|
120
|
+
<div class="description">
|
121
|
+
<p>
|
122
|
+
Perform ruby-specific setup
|
123
|
+
</p>
|
124
|
+
</div>
|
125
|
+
<div class="sourcecode">
|
126
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000008_source')" id="l_M000008_source">show source</a> ]</p>
|
127
|
+
<div id="M000008_source" class="dyn-source">
|
128
|
+
<pre>
|
129
|
+
<span class="ruby-comment cmt"># File lib/syntax/lang/ruby.rb, line 18</span>
|
130
|
+
18: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup</span>
|
131
|
+
19: <span class="ruby-ivar">@selector</span> = <span class="ruby-keyword kw">false</span>
|
132
|
+
20: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">false</span>
|
133
|
+
21: <span class="ruby-ivar">@heredocs</span> = []
|
134
|
+
22: <span class="ruby-keyword kw">end</span>
|
135
|
+
</pre>
|
136
|
+
</div>
|
137
|
+
</div>
|
138
|
+
</div>
|
139
|
+
<div class="method">
|
140
|
+
<div class="title">
|
141
|
+
<a name="M000009"></a><b>step</b>()
|
142
|
+
</div>
|
143
|
+
<div class="description">
|
144
|
+
<p>
|
145
|
+
Step through a single iteration of the tokenization process.
|
146
|
+
</p>
|
147
|
+
</div>
|
148
|
+
<div class="sourcecode">
|
149
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000009_source')" id="l_M000009_source">show source</a> ]</p>
|
150
|
+
<div id="M000009_source" class="dyn-source">
|
151
|
+
<pre>
|
152
|
+
<span class="ruby-comment cmt"># File lib/syntax/lang/ruby.rb, line 25</span>
|
153
|
+
25: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">step</span>
|
154
|
+
26: <span class="ruby-keyword kw">case</span>
|
155
|
+
27: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">bol?</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/=begin/</span> )
|
156
|
+
28: <span class="ruby-identifier">start_group</span>( <span class="ruby-identifier">:comment</span>, <span class="ruby-identifier">scan_until</span>( <span class="ruby-node">/^=end#{EOL}/</span> ) )
|
157
|
+
29: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">bol?</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">check</span>( <span class="ruby-node">/__END__#{EOL}/</span> )
|
158
|
+
30: <span class="ruby-identifier">start_group</span>( <span class="ruby-identifier">:comment</span>, <span class="ruby-identifier">scan_until</span>( <span class="ruby-regexp re">/\Z/</span> ) )
|
159
|
+
31: <span class="ruby-keyword kw">else</span>
|
160
|
+
32: <span class="ruby-keyword kw">case</span>
|
161
|
+
33: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/def\s+/</span> )
|
162
|
+
34: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:keyword</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/def\s+/</span> )
|
163
|
+
35: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:method</span>, <span class="ruby-identifier">scan_until</span>( <span class="ruby-node">/(?=[;(\s]|#{EOL})/</span> )
|
164
|
+
36: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/class\s+/</span> )
|
165
|
+
37: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:keyword</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/class\s+/</span> )
|
166
|
+
38: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:class</span>, <span class="ruby-identifier">scan_until</span>( <span class="ruby-node">/(?=[;\s<]|#{EOL})/</span> )
|
167
|
+
39: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/module\s+/</span> )
|
168
|
+
40: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:keyword</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/module\s+/</span> )
|
169
|
+
41: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:module</span>, <span class="ruby-identifier">scan_until</span>( <span class="ruby-node">/(?=[;\s]|#{EOL})/</span> )
|
170
|
+
42: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/::/</span> )
|
171
|
+
43: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/::/</span>)
|
172
|
+
44: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/:"/</span> )
|
173
|
+
45: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:symbol</span>, <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/:/</span>)
|
174
|
+
46: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:symbol</span>, <span class="ruby-identifier">:symbol</span>, <span class="ruby-value str">""</span>, <span class="ruby-keyword kw">true</span>
|
175
|
+
47: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
176
|
+
48: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/:'/</span> )
|
177
|
+
49: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:symbol</span>, <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/:/</span>)
|
178
|
+
50: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:symbol</span>, <span class="ruby-identifier">:symbol</span>, <span class="ruby-value str">""</span>, <span class="ruby-keyword kw">false</span>
|
179
|
+
51: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
180
|
+
52: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/:[_a-zA-Z@$][$@\w]*[=!?]?/</span> )
|
181
|
+
53: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:symbol</span>, <span class="ruby-identifier">matched</span>
|
182
|
+
54: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
183
|
+
55: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\?(\\[^\n\r]|[^\\\n\r\s])/</span> )
|
184
|
+
56: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:char</span>, <span class="ruby-identifier">matched</span>
|
185
|
+
57: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
186
|
+
58: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">check</span>( <span class="ruby-regexp re">/(__FILE__|__LINE__|true|false|nil|self)[?!]?/</span> )
|
187
|
+
59: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@selector</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">matched</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">??</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">matched</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?!</span>
|
188
|
+
60: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:ident</span>,
|
189
|
+
61: <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/(__FILE__|__LINE__|true|false|nil|self)[?!]?/</span>)
|
190
|
+
62: <span class="ruby-keyword kw">else</span>
|
191
|
+
63: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:constant</span>,
|
192
|
+
64: <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/(__FILE__|__LINE__|true|false|nil|self)/</span>)
|
193
|
+
65: <span class="ruby-keyword kw">end</span>
|
194
|
+
66: <span class="ruby-ivar">@selector</span> = <span class="ruby-keyword kw">false</span>
|
195
|
+
67: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
196
|
+
68: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/0([bB][01]+|[oO][0-7]+|[dD][0-9]+|[xX][0-9a-fA-F]+)/</span>)
|
197
|
+
69: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:number</span>, <span class="ruby-identifier">matched</span>
|
198
|
+
70: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
199
|
+
71: <span class="ruby-keyword kw">else</span>
|
200
|
+
72: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">peek</span>(<span class="ruby-value">2</span>)
|
201
|
+
73: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"%r"</span>
|
202
|
+
74: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:regex</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/../</span> ), <span class="ruby-keyword kw">true</span>
|
203
|
+
75: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
204
|
+
76: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"%w"</span>, <span class="ruby-value str">"%q"</span>
|
205
|
+
77: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:string</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/../</span> ), <span class="ruby-keyword kw">false</span>
|
206
|
+
78: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
207
|
+
79: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"%s"</span>
|
208
|
+
80: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:symbol</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/../</span> ), <span class="ruby-keyword kw">false</span>
|
209
|
+
81: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
210
|
+
82: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"%W"</span>, <span class="ruby-value str">"%Q"</span>, <span class="ruby-value str">"%x"</span>
|
211
|
+
83: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:string</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/../</span> ), <span class="ruby-keyword kw">true</span>
|
212
|
+
84: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
213
|
+
85: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/%[^\sa-zA-Z0-9]/</span>
|
214
|
+
86: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:string</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/./</span> ), <span class="ruby-keyword kw">true</span>
|
215
|
+
87: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
216
|
+
88: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"<<"</span>
|
217
|
+
89: <span class="ruby-identifier">saw_word</span> = ( <span class="ruby-identifier">chunk</span>[<span class="ruby-value">-1</span>,<span class="ruby-value">1</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/[\w!?]/</span> )
|
218
|
+
90: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/<</</span> )
|
219
|
+
91: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">saw_word</span>
|
220
|
+
92: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">false</span>
|
221
|
+
93: <span class="ruby-keyword kw">return</span>
|
222
|
+
94: <span class="ruby-keyword kw">end</span>
|
223
|
+
95:
|
224
|
+
96: <span class="ruby-identifier">float_right</span> = <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/-/</span> )
|
225
|
+
97: <span class="ruby-identifier">append</span> <span class="ruby-value str">"-"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">float_right</span>
|
226
|
+
98: <span class="ruby-keyword kw">if</span> ( <span class="ruby-identifier">type</span> = <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/['"]/</span> ) )
|
227
|
+
99: <span class="ruby-identifier">append</span> <span class="ruby-identifier">type</span>
|
228
|
+
100: <span class="ruby-identifier">delim</span> = <span class="ruby-identifier">scan_until</span>( <span class="ruby-node">/(?=#{type})/</span> )
|
229
|
+
101: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">delim</span>.<span class="ruby-identifier">nil?</span>
|
230
|
+
102: <span class="ruby-identifier">append</span> <span class="ruby-identifier">scan_until</span>( <span class="ruby-regexp re">/\Z/</span> )
|
231
|
+
103: <span class="ruby-keyword kw">return</span>
|
232
|
+
104: <span class="ruby-keyword kw">end</span>
|
233
|
+
105: <span class="ruby-keyword kw">else</span>
|
234
|
+
106: <span class="ruby-identifier">delim</span> = <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\w+/</span> ) <span class="ruby-keyword kw">or</span> <span class="ruby-keyword kw">return</span>
|
235
|
+
107: <span class="ruby-keyword kw">end</span>
|
236
|
+
108: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:constant</span>, <span class="ruby-identifier">delim</span>
|
237
|
+
109: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-node">/#{type}/</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">type</span>
|
238
|
+
110: <span class="ruby-ivar">@heredocs</span> <span class="ruby-operator"><<</span> [ <span class="ruby-identifier">float_right</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">delim</span> ]
|
239
|
+
111: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
240
|
+
112: <span class="ruby-keyword kw">else</span>
|
241
|
+
113: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">peek</span>(<span class="ruby-value">1</span>)
|
242
|
+
114: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/[\n\r]/</span>
|
243
|
+
115: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@heredocs</span>.<span class="ruby-identifier">empty?</span>
|
244
|
+
116: <span class="ruby-identifier">scan_heredoc</span>(<span class="ruby-operator">*</span><span class="ruby-ivar">@heredocs</span>.<span class="ruby-identifier">shift</span>)
|
245
|
+
117: <span class="ruby-keyword kw">else</span>
|
246
|
+
118: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:normal</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\s+/</span> )
|
247
|
+
119: <span class="ruby-keyword kw">end</span>
|
248
|
+
120: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">false</span>
|
249
|
+
121: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/\s/</span>
|
250
|
+
122: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:normal</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\s+/</span> )
|
251
|
+
123: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"#"</span>
|
252
|
+
124: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:comment</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/#[^\n\r]*/</span> )
|
253
|
+
125: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/[A-Z]/</span>
|
254
|
+
126: <span class="ruby-identifier">start_group</span> <span class="ruby-ivar">@selector</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">:ident</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">:constant</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\w+/</span> )
|
255
|
+
127: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
256
|
+
128: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/[a-z_]/</span>
|
257
|
+
129: <span class="ruby-identifier">word</span> = <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\w+[?!]?/</span> )
|
258
|
+
130: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@selector</span> <span class="ruby-operator">&&</span> <span class="ruby-constant">KEYWORDS</span>.<span class="ruby-identifier">include?</span>( <span class="ruby-identifier">word</span> )
|
259
|
+
131: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:keyword</span>, <span class="ruby-identifier">word</span>
|
260
|
+
132: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">false</span>
|
261
|
+
133: <span class="ruby-keyword kw">elsif</span>
|
262
|
+
134: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:ident</span>, <span class="ruby-identifier">word</span>
|
263
|
+
135: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
264
|
+
136: <span class="ruby-keyword kw">end</span>
|
265
|
+
137: <span class="ruby-ivar">@selector</span> = <span class="ruby-keyword kw">false</span>
|
266
|
+
138: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/\d/</span>
|
267
|
+
139: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:number</span>,
|
268
|
+
140: <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/[\d_]+(\.[\d_]+)?([eE][\d_]+)?/</span> )
|
269
|
+
141: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
270
|
+
142: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'"'</span>
|
271
|
+
143: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:string</span>, <span class="ruby-value str">""</span>, <span class="ruby-keyword kw">true</span>
|
272
|
+
144: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
273
|
+
145: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'/'</span>
|
274
|
+
146: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@allow_operator</span>
|
275
|
+
147: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">%r{/}</span>)
|
276
|
+
148: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">false</span>
|
277
|
+
149: <span class="ruby-keyword kw">else</span>
|
278
|
+
150: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:regex</span>, <span class="ruby-value str">""</span>, <span class="ruby-keyword kw">true</span>
|
279
|
+
151: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
280
|
+
152: <span class="ruby-keyword kw">end</span>
|
281
|
+
153: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"'"</span>
|
282
|
+
154: <span class="ruby-identifier">scan_delimited_region</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">:string</span>, <span class="ruby-value str">""</span>, <span class="ruby-keyword kw">false</span>
|
283
|
+
155: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
284
|
+
156: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"."</span>
|
285
|
+
157: <span class="ruby-identifier">dots</span> = <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\.{1,3}/</span> )
|
286
|
+
158: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">dots</span>
|
287
|
+
159: <span class="ruby-ivar">@selector</span> = ( <span class="ruby-identifier">dots</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span> )
|
288
|
+
160: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/[@]/</span>
|
289
|
+
161: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:attribute</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/@{1,2}\w*/</span> )
|
290
|
+
162: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
291
|
+
163: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/[$]/</span>
|
292
|
+
164: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:global</span>, <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/\$/</span>)
|
293
|
+
165: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:global</span>, <span class="ruby-identifier">scan</span>( <span class="ruby-regexp re">/\w+|./</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">check</span>(<span class="ruby-regexp re">/./</span>)
|
294
|
+
166: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
295
|
+
167: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/[-!?*\/+=<>(\[\{}:;,&|%]/</span>
|
296
|
+
168: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/./</span>)
|
297
|
+
169: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">false</span>
|
298
|
+
170: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/[)\]]/</span>
|
299
|
+
171: <span class="ruby-identifier">start_group</span> <span class="ruby-identifier">:punct</span>, <span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/./</span>)
|
300
|
+
172: <span class="ruby-ivar">@allow_operator</span> = <span class="ruby-keyword kw">true</span>
|
301
|
+
173: <span class="ruby-keyword kw">else</span>
|
302
|
+
174: <span class="ruby-comment cmt"># all else just falls through this, to prevent</span>
|
303
|
+
175: <span class="ruby-comment cmt"># infinite loops...</span>
|
304
|
+
176: <span class="ruby-identifier">append</span> <span class="ruby-identifier">getch</span>
|
305
|
+
177: <span class="ruby-keyword kw">end</span>
|
306
|
+
178: <span class="ruby-keyword kw">end</span>
|
307
|
+
179: <span class="ruby-keyword kw">end</span>
|
308
|
+
180: <span class="ruby-keyword kw">end</span>
|
309
|
+
181: <span class="ruby-keyword kw">end</span>
|
310
|
+
</pre>
|
311
|
+
</div>
|
312
|
+
</div>
|
313
|
+
</div>
|
314
|
+
</div>
|
315
|
+
|
316
|
+
</div>
|
317
|
+
|
318
|
+
</body>
|
319
|
+
</html>
|
@@ -0,0 +1,151 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
<html>
|
6
|
+
<head>
|
7
|
+
<title>Class: Syntax::Token</title>
|
8
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
9
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
10
|
+
|
11
|
+
<script language="JavaScript" type="text/javascript">
|
12
|
+
// <![CDATA[
|
13
|
+
|
14
|
+
function toggleSource( id )
|
15
|
+
{
|
16
|
+
var elem
|
17
|
+
var link
|
18
|
+
|
19
|
+
if( document.getElementById )
|
20
|
+
{
|
21
|
+
elem = document.getElementById( id )
|
22
|
+
link = document.getElementById( "l_" + id )
|
23
|
+
}
|
24
|
+
else if ( document.all )
|
25
|
+
{
|
26
|
+
elem = eval( "document.all." + id )
|
27
|
+
link = eval( "document.all.l_" + id )
|
28
|
+
}
|
29
|
+
else
|
30
|
+
return false;
|
31
|
+
|
32
|
+
if( elem.style.display == "block" )
|
33
|
+
{
|
34
|
+
elem.style.display = "none"
|
35
|
+
link.innerHTML = "show source"
|
36
|
+
}
|
37
|
+
else
|
38
|
+
{
|
39
|
+
elem.style.display = "block"
|
40
|
+
link.innerHTML = "hide source"
|
41
|
+
}
|
42
|
+
}
|
43
|
+
|
44
|
+
function openCode( url )
|
45
|
+
{
|
46
|
+
window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
|
47
|
+
}
|
48
|
+
// ]]>
|
49
|
+
</script>
|
50
|
+
</head>
|
51
|
+
|
52
|
+
<body>
|
53
|
+
<table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
|
54
|
+
<td class="file-title"><span class="file-title-prefix">Class</span><br />Syntax::Token</td>
|
55
|
+
<td align="right">
|
56
|
+
<table cellspacing=0 cellpadding=2>
|
57
|
+
<tr valign="top">
|
58
|
+
<td>In:</td>
|
59
|
+
<td>
|
60
|
+
<a href="../../files/lib/syntax/common_rb.html">lib/syntax/common.rb</a>
|
61
|
+
</td>
|
62
|
+
</tr>
|
63
|
+
<tr>
|
64
|
+
<td>Parent:</td>
|
65
|
+
<td>
|
66
|
+
String
|
67
|
+
</td>
|
68
|
+
</tr>
|
69
|
+
</table>
|
70
|
+
</td>
|
71
|
+
</tr>
|
72
|
+
</table>
|
73
|
+
<!-- banner header -->
|
74
|
+
|
75
|
+
<div id="bodyContent">
|
76
|
+
<div id="content">
|
77
|
+
|
78
|
+
<div class="description"><p>
|
79
|
+
A single token extracted by a tokenizer. It is simply the lexeme itself,
|
80
|
+
decorated with a ‘group’ attribute to identify the type of the
|
81
|
+
lexeme.
|
82
|
+
</p>
|
83
|
+
</div>
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
<div class="sectiontitle">Methods</div>
|
88
|
+
<ul>
|
89
|
+
<li><a href="#M000020">new</a></li>
|
90
|
+
</ul>
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
<div class="sectiontitle">Attributes</div>
|
97
|
+
<table border='0' cellpadding='5'>
|
98
|
+
<tr valign='top'>
|
99
|
+
<td class='attr-rw'>
|
100
|
+
[R]
|
101
|
+
</td>
|
102
|
+
<td class='attr-name'>group</td>
|
103
|
+
<td class='attr-desc'>
|
104
|
+
the type of the lexeme that was extracted.
|
105
|
+
|
106
|
+
</td>
|
107
|
+
</tr>
|
108
|
+
<tr valign='top'>
|
109
|
+
<td class='attr-rw'>
|
110
|
+
[R]
|
111
|
+
</td>
|
112
|
+
<td class='attr-name'>instruction</td>
|
113
|
+
<td class='attr-desc'>
|
114
|
+
the instruction associated with this token (:none, :region_open, or
|
115
|
+
:region_close)
|
116
|
+
|
117
|
+
</td>
|
118
|
+
</tr>
|
119
|
+
</table>
|
120
|
+
|
121
|
+
<div class="sectiontitle">Public Class methods</div>
|
122
|
+
<div class="method">
|
123
|
+
<div class="title">
|
124
|
+
<a name="M000020"></a><b>new</b>( text, group, instruction = :none )
|
125
|
+
</div>
|
126
|
+
<div class="description">
|
127
|
+
<p>
|
128
|
+
Create a new <a href="Token.html">Token</a> representing the given text,
|
129
|
+
and belonging to the given group.
|
130
|
+
</p>
|
131
|
+
</div>
|
132
|
+
<div class="sourcecode">
|
133
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000020_source')" id="l_M000020_source">show source</a> ]</p>
|
134
|
+
<div id="M000020_source" class="dyn-source">
|
135
|
+
<pre>
|
136
|
+
<span class="ruby-comment cmt"># File lib/syntax/common.rb, line 19</span>
|
137
|
+
19: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>( <span class="ruby-identifier">text</span>, <span class="ruby-identifier">group</span>, <span class="ruby-identifier">instruction</span> = <span class="ruby-identifier">:none</span> )
|
138
|
+
20: <span class="ruby-keyword kw">super</span> <span class="ruby-identifier">text</span>
|
139
|
+
21: <span class="ruby-ivar">@group</span> = <span class="ruby-identifier">group</span>
|
140
|
+
22: <span class="ruby-ivar">@instruction</span> = <span class="ruby-identifier">instruction</span>
|
141
|
+
23: <span class="ruby-keyword kw">end</span>
|
142
|
+
</pre>
|
143
|
+
</div>
|
144
|
+
</div>
|
145
|
+
</div>
|
146
|
+
</div>
|
147
|
+
|
148
|
+
</div>
|
149
|
+
|
150
|
+
</body>
|
151
|
+
</html>
|