Skip to content

Commit

Permalink
Version 5.10
Browse files Browse the repository at this point in the history
  • Loading branch information
wmjordan committed Apr 1, 2021
1 parent 24d3478 commit c88e181
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 46 deletions.
2 changes: 1 addition & 1 deletion Codist/Config.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ namespace Codist
{
sealed class Config
{
internal const string CurrentVersion = "5.9.1";
internal const string CurrentVersion = "5.10.0";
const string ThemePrefix = "res:";
const int DefaultIconSize = 20;
internal const string LightTheme = ThemePrefix + "Light", DarkTheme = ThemePrefix + "Dark", SimpleTheme = ThemePrefix + "Simple";
Expand Down
2 changes: 1 addition & 1 deletion Codist/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,5 @@
[assembly: AssemblyTrademark(nameof(Codist))]
[assembly: ComVisible(false)]
[assembly: AssemblyVersion("5.0.0.0")]
[assembly: AssemblyFileVersion("5.9.1.6100")]
[assembly: AssemblyFileVersion("5.10.0.6200")]
[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
2 changes: 1 addition & 1 deletion Codist/source.extension.vsixmanifest
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<PackageManifest Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011" xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011">
<Metadata>
<Identity Id="Codist.WMJ.c7b93d20-621f-4b21-9d28-d51157ef0b94" Version="5.9.1.6113" Language="en-US" Publisher="WMJ" />
<Identity Id="Codist.WMJ.c7b93d20-621f-4b21-9d28-d51157ef0b94" Version="5.10.0.6260" Language="en-US" Publisher="WMJ" />
<DisplayName>Codist</DisplayName>
<Description xml:space="preserve">A productivity booster for C# programmers which enhances syntax highlighting, quick info (tooltip), navigation bar, scrollbar, display quality and brings smart tool bar to code editor.</Description>
<MoreInfo>https://github.com/wmjordan/Codist</MoreInfo>
Expand Down
75 changes: 32 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ Codist

Check out this list to see what _Codist_ can do for you.

* [Advanced Syntax Highlight](#advanced-c-syntax-highlight) items in ANY LANGUAGES (**new in version 5.6**), and [*Comment Tagger*](#comment-tagger-and-styles) highlights your `to-do` style comments
* [Advanced Syntax Highlight](#advanced-c-syntax-highlight) items in ANY LANGUAGES, and [*Comment Tagger*](#comment-tagger-and-styles) highlights your `to-do` style comments
![](doc/feature-brief-syntax-highlight.png)
* [Super Quick Info](#super-quick-info) with extended XML Doc, *Click and Go* to source code
![Feature Brief Super Quick Info](doc/feature-brief-super-quick-info.png)
* [Navigation Bar](#navigation-bar) with a drag-and-drop and filter enabled member list (**new in version 5**)
* [Navigation Bar](#navigation-bar) with a drag-and-drop and filter enabled member list
![Feature Brief Navigation Bar](doc/feature-brief-navigation-bar.png)
* [Smart Bar](#smart-bar) with common edit commands and symbol reference analyzers
![Feature Brief Smart Bar](doc/feature-brief-smart-bar.png)
Expand All @@ -24,15 +24,15 @@ Check out this list to see what _Codist_ can do for you.
* [Acknowledgements](#acknowledgements)
* [License](#license), [Bugs and Sugguestions](#bugs-and-suggestions), [Donate](#support-codist-by-donation)

From version 5.7 on, _Codist_ supports localization into other languages and it has both English and Chinese now.
_Codist_ supports localization into other languages and it has both English and Chinese now.

![Feature overview](doc/preview.png)

## Advanced C# Syntax Highlight

The advanced syntax highlight function highlights every aspect of C# language elements with diverse styles, including using various font families and text styles, enlarging or shrinking font sizes, changing foreground or background colors and transparency.

From version 5.6 on, it is possible to change syntax highlight styles in any languages, such as Visual BASIC, F#, SASS, and so on, even if they are not recognized by Codist.
You can change syntax highlight styles in any languages, such as Visual BASIC, F#, SASS, and so on, even if they are not recognized by Codist.

The following screenshots of the `TestPage.cs` file in the source code project demonstrates possible syntax highlight effects in the Light theme.

Expand Down Expand Up @@ -144,7 +144,7 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

* **Quick Info item size**

From version 5 on, it is possible to limit the size of each Quick Info item, so they won't cover your whole screen. Previously, this feature works in C# editor only.
It is possible to limit the size of each Quick Info item, so they won't cover your whole screen. Previously, this feature works in C# editor only.

By default, _Codist_ does not apply size limitations. You must manually set the _Max width_ and _Max height_ here. Extra height can be assigned to C# XML Documentations, so you can read more of them at a glance. If the contents exceed the width, they are wrapped, and scrollbars will appear when necessary, as the screenshot below demonstrates.

Expand All @@ -163,7 +163,7 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

![Super Quick Info - Click and Go](doc/super-quick-info-click-go.png)

* From version 5.2 on, a **Context menu** with many symbol analysis commands will show up when you right click the signature of the symbol definition or any symbol that appears in the XML Doc.
* A **Context menu** with many symbol analysis commands will show up when you right click the signature of the symbol definition or any symbol that appears in the XML Doc.

![Super Quick Info Csharp Menu](doc/super-quick-info-csharp-menu.png)

Expand Down Expand Up @@ -198,7 +198,7 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

![Super Quick Info - Override Exception](doc/super-quick-info-override-exception.png)

From version 5.2 on, _Codist_ shows XML Doc for those `namespace`s with an embedded `NamespaceDoc` class, like what is done in [SandCastle](https://github.com/EWSoftware/SHFB).
_Codist_ shows XML Doc for those `namespace`s with an embedded `NamespaceDoc` class, like what is done in [SandCastle](https://github.com/EWSoftware/SHFB).

![Super Quick Info Csharp Namespace](doc/super-quick-info-csharp-namespace.png)

Expand Down Expand Up @@ -260,58 +260,49 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

![Navigation Bar Overview](doc/navigation-bar-overview.png)

**Note**: From version 5.2 on, Navigation Bar not only works with C# code documents, but also Markdown documents.

Typically you can see three or four items on the bar.

1. **Namespace node**: the innermost namespace which contains the caret. On the above screen shot, it is the "`TestProject`" node.
2. **Type node**: the type which contains the caret. On the above screen shot, it is the "`MyStruct`" node.
3. **Region node**: when the caret is between `#region` and `#endregion`, this node appears. On the above screen shot, it is the "`Private fields`" node.
4. **Member node**: the member where the caret is in. This node is drawn highlighted. On the above screen shot, it is the "`Constant`" node.
**Note**: Navigation Bar works with both C# code documents and Markdown documents.

Nodes on the _Navigation Bar_ are clickable.

1. Clicking on a **Namespace node** will popup a menu, displaying namespaces and types defined in the active document. You can click on those items and jump to the beginning of corresponding definitions.

From version 5 on, you can **drag and drop** items in the menu to reorder types within the document.
1. Clicking on the left-most **Document node** will popup a menu, displaying namespaces and types defined in the active document.

The number beneath the items indicates number of lines of the current code file.
On top of the menu there is a **Search Declaration** box, within which you can type and search declarations.

![Navigation Bar Namespace Types](doc/navigation-bar-namespace-types.png)

On top of the menu there is a **Search Declaration** box, within which you can type and search declarations.

Besides the _Search Declaration_ box, there are three buttons. The first one is pressed by default, which restricts the search scope to active document. If the second one is pressed, it pops up the first button and expands the search scope to current project (see screen shot below). The third button clears the search box and reverts the items back to unfiltered namespaces and types.

From version 5.10 on, you can press `-` or `=` key on your keyboard to switch search scope between current document and current project.

![Navigation Bar Search Declaration](doc/navigation-bar-search-declaration.png)

**Note**: From version 5 on, if the first character in the search box is an upper case one, the search will be **case-sensitive**, otherwise, it is case-insensitive.
**Note**: If the first character in the search box is an upper case one, the search will be **case-sensitive**, otherwise, it is case-insensitive.

2. Clicking on a **Type node** will popup a menu, displaying members and regions defined within the type. You can click on those items and jump to the definition of the corresponding member.
You can **drag and drop** items in the menu to reorder types within the document.

From version 5 on, you can **drag and drop** items in the menu to reorder members, nested types and `#region`s within the document. If a `partial` type spans over several code files, it is also possible to rearrange members among them.
2. Clicking on a **Namespace node** which follows the Document node will popup a menu, displaying namespaces and types defined in the corresponding namespace. You can click on those items and jump to the beginning of corresponding definitions.

The number beneath the items indicates number of lines of the current type.
There is also a search box in this menu, which filters content of the menu.

![Navigation Bar Fields](doc/navigation-bar-fields.png)
There are several buttons beside the search box. Numbers on the buttons counts corrsponding items within the type. Hover your mouse cursor over the button, you can read meanings of them. Pressing down those buttons filters members within the menu to corresponding ones.

The current symbol where the caret is on is highlighted.
You can right click items on the menu to bring out a context menu for curresponding members.

Field values and auto-property expressions are also displayed on this menu. So, you can read the initial value of fields immediately.
3. Clicking on a **Type node** will popup a menu, displaying members and regions defined within the type. You can click on those items and jump to the definition of the corresponding member.

There is also a search box in this menu, which filters content of the menu.
You can **drag and drop** items in the menu to reorder members, nested types and `#region`s within the document. If a `partial` type spans over several code files, it is also possible to rearrange members among them.

**Note**: From version 5 on, if the first character in the search box is an upper case one, the search will be **case-sensitive**, otherwise, it is case-insensitive.
The number beneath the items indicates number of lines of the current type.

There are several buttons beside the search box. Numbers on the buttons counts corrsponding items within the type. Hover your mouse cursor over the button, you can read meanings of them. Pressing down those buttons filters members within the menu to corresponding ones.
![Navigation Bar Fields](doc/navigation-bar-fields.png)

From version 5 on, you can right click items on the menu to bring out a context menu for curresponding members.
The current symbol where the caret is on is highlighted.

![Navigation Bar Fields](doc/navigation-bar-context-menu.png)
Field values and auto-property expressions are also displayed on this menu. So, you can read the initial value of fields immediately.

From version 5.1 on, the right click menu includes symbol analysis commands.
![Navigation Bar Fields](doc/navigation-bar-context-menu.png)

3. Clicking on a **Member node** will select the whole member. If you have the _Smart Bar_ feature on and let it appear when selection is changed, _Smart Bar_ will be displayed and let you perform actions onto the member.
4. Clicking on a **Member node** will select the whole member. If you have the _Smart Bar_ feature on and let it appear when selection is changed, _Smart Bar_ will be displayed and let you perform actions onto the member.

![Navigation Bar Select](doc/navigation-bar-select.png)

Expand Down Expand Up @@ -339,7 +330,7 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

### Markdown Navigation Bar

The Markdown navigation bar introduced in version 5.2 lists all titles appear in a Markdown document.
The Markdown navigation bar lists all titles appear in a Markdown document.

![Navigation Bar Markdown](doc/navigation-bar-markdown.png)

Expand All @@ -359,7 +350,7 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

![Smart Bar](doc/smart-bar-2.png)

From version 5.2 on, there are multiple predefined **web search** commands in the menu when you right click the Find button, which will launch your browser to search the text you select in document window. So, it is handier to look for answers from the web or find code examples in _GitHub_.
There are multiple predefined **web search** commands in the menu when you right click the Find button, which will launch your browser to search the text you select in document window. So, it is handier to look for answers from the web or find code examples in _GitHub_.

![Smart Bar Search](doc/smart-bar-search.png)

Expand Down Expand Up @@ -399,7 +390,7 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

![Smart Bar Instance Producer](doc/smart-bar-instance-producer.png)

From version 5.2 on, there are two buttons on the top right corner in the result list of symbol analysis commands. The _Pin_ button will keep the list on the screen. And you can use your mouse to drag those lists around.
There are two buttons on the top right corner in the result list of symbol analysis commands. The _Pin_ button will keep the list on the screen. And you can use your mouse to drag those lists around.

### Symbol Marker

Expand Down Expand Up @@ -437,8 +428,6 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

![Smart Bar File Operations](doc/smart-bar-file-operations.png)

From version 4.4 on, some extra buttons will show up on _Smart Bar_ in C/C++ code windows.

## Scrollbar Marker

_Scollbar Marker_ draws extra glyphs and shapes on the vertical scrollbar for the following syntax elements:
Expand All @@ -464,19 +453,19 @@ From version 5.7 on, _Codist_ supports localization into other languages and it

Programmers who do not like *ClearType* rendering, which made text blurry and colorful, may want to try _Force Grayscale Text Rendering_ options.

From version 5.7 on, it is possible to use Compact menu like _Visual Studio 2019_ in _Visual Studio 2017_. Simply checking the _Move main menu to title bar_ option will do.
It is possible to use Compact menu like _Visual Studio 2019_ in _Visual Studio 2017_. Simply checking the _Move main menu to title bar_ option will do.

![Compact Menu](doc/compact-menu.png)

## Codist in Your Language

From version 5.7 on, it is possible to localize _Codist_ to other language. Simplified Chinese (简体中文) and English are provided by default.
It is possible to localize _Codist_ to other language. Simplified Chinese (简体中文) and English are provided by default.

The interface of _Codist_ will change according to the _International_ settings of _Visual Studio_.

## Other Features

From version 5 on, it is possible to output a time stamp after each build.
It is possible to output a time stamp after each build.

For VSIX developers, there is also an option to automatically increment version number for your VSIX manifest file.

Expand Down

0 comments on commit c88e181

Please sign in to comment.