text:
Rhetoric and Composition/Publishing

=Overview=

All authors who publish books and articles have at least one thing in common: they believe their work is interesting, desirable, or useful to other people. Many texts, such as this Rhetoric and Composition wikitext, are published online and are available for free, without any paid authors or editors. Although many authors and readers prefer print publications, it is now entirely possible to earn a good living writing exclusively for the web.

Getting published may seem unlikely or even impossible, but there are readily available resources to help you. If you are interested in freelance writing for magazines, the Writer’s Market is probably one of the most accessible and helpful sources (see below). If you are interested in publishing scholarly or professional research, you will need to familiarize yourself with the journals and book publishers associated with your field.

It is very important to know a publisher's expectations before sending them a manuscript. Pay close attention to the publisher's policies; some do not accept any unsolicited manuscripts, and many have strict rules about formatting, subject matter, and deadlines. Don't waste time and money sending out manuscripts that are certain to be rejected.

If you want to send an idea for a potential article or book to an editor, you may do this in a query letter. A query letter should be short and to the point. The point is to interest the editor into buying your idea or article or at least requesting a book proposal or entire manuscript. Included in a query letter is a strong opening lead about the article, book, or piece, a description of the development or structure and content, any other information or images you intend to include, why you are qualified to write the piece, and a solid closing requesting to write or submit the piece. It would be wise to include a deadline for reply.

=Types of Publication= The first thing you should do is figure out what type of publishing venue is appropriate for your needs.

Do-It-Yourself Print Publishing
Print publication is the oldest and most traditional way to earn a living as a writer and flourish as an academic. Unfortunately, printing books is an expensive process, and you may find it difficult to interest a publisher in your work. Anyone, however, can pay out of pocket to have a book published by a vanity press. The results are often quite good, with a slick and glossy production that is indistinguishable from other books. If you have a manuscript with very limited commercial appeal (such as a history of your family or hometown), or want to control the marketing of the book yourself, a vanity press may be the way to go. Costs vary depending on the size and types of illustrations used in the book.

Academic Publishing
Academic publishing is how scholars share their research and critically review other works. This type of publishing includes academic journals and books in the sciences and humanities. You are probably most familiar with academic journals in electronic form, since many college libraries offer access to extensive databases of journal articles in electronic form, such as JSTOR and Elsevier's Science Direct. Categories for journals range from physics and geometry to education and art, but all are written for other scholars in a particular field. Authors are rarely paid for publishing articles in academic journals--the reward comes instead in the form of increased prestige or a promotion.

Commercial Publishing
Commercial publishing means writing for profit and is the way the majority of professional authors earn their living. Commercial publication can include books, articles, journals, magazines, and more. If you want to become a professional author, you should research the publishers who publish in your fields of interest. Familiarize yourself with their titles and consider how your work will complement their existing selections. Visit their websites or call them to learn how they solicit manuscripts. Some will only accept manuscripts delivered to them by agents. In any case, you will need to convince the publisher that your work has commercial value and an adequate audience of potential readers.

Writer’s Market is a well-known resource for freelance writers. It offers market information, tips for getting published, advice from agents and editors, and formatting information. These services are available in the Writer's Market book and at WritersMarket.com. There is an annual or monthly fee for online access.

Electronic Publication
Publishing your work online can take many forms, such as blogs, wikis, Adobe PDF files, e-books, and so on. There are plenty of easy ways to make your works available online for free, but earning a profit on them is a different matter. The Amazon Kindle and Apple iPad have opened up new opportunities for writers and publishers interested in selling electronic works. Also, many formerly print-based newspapers and magazines now offer websites, many with original articles published exclusively online. Search the websites for information about submitting a manuscript or query. While the pay is unlikely to match that of print publications, there are still plenty of opportunities to support yourself as a freelance author.

Freelance Writing

Writing, unfortunately, cannot always be done simply for the love of writing. Unless one has a wealthy spouse or a bursting portfolio, spending a significant amount of time writing requires that you treat it like a business. The freelance writer must be part writer, and part business-person. In fact, when considering everything involved in maintaining a living as a freelance writer, the career is similar to that of a small-business owner. It involves secure jobs, setting prices, and negotiating skills.

This lifestyle may conjure up images of endless travel and world experience, but the fact is, you never get a paid vacation. Writing for publication results in jobs being canceled, payment delays, and payment shortcomings. One must be very careful in factoring the amount of money he/she will receive each month, as it can sometimes take months to get paid.

=Your Rights= As a writer seeking publication, you should know your rights. Anything you write is automatically protected by copyright--no one else is permitted to publish it without your permission. When you find a publisher, you will likely sign a contract that transfers some or all of your copyright to the publisher. Contracts can be confusing and difficult for authors to understand; it is often worth finding an agent who can negotiate contracts with publishers to better suit your interest. Many terms of a contract can be negotiated, such as how long the publisher retains exclusive rights to publish your work, what media they can use to publish it, or even who controls the movie or television rights.

There are also alternatives to standard copyright, such as Creative Commons licensing. Creative Commons licenses vary in scope and coverage, but the basic idea is that anyone is allowed to copy and distribute your work without getting your permission first.

=External Links= There are plenty of websites dedicated to supporting aspiring writers of all types. See the links below for more information.
 * Academic publishing. Wikipedia's entry on academic publishing has lots of information and links for scholars and researchers.
 * WritersMarket.com. Find places to sell your writing, whether you've got a book, manuscript, or article idea.
 * Writing Guide Online vs. Print Publishing. Discusses the differences between print and online publishing. Intended for novice publishers.

title: Rhetoric and Composition/Publishing


text:
Template:Guide to Unix/Clink

==How to use== The Guide to Unix/Clink template, used at Guide to Unix/Commands, generates tables of links to pages about Unix commands. The basic syntax is:

All of the parameters are optional except command and the special parameter s for the synopsis. Specifying a section number is highly recommended even if special parameters are not set. The command and section parameters must not contain spaces.

You can easily generate links:
 * For *BSD manual pages, set bsds to yes and provide a section number.
 * For Linux questions wiki page, set lqwiki to yes.
 * For GNU coreutils info page, set coreutils to a certain integer from the URL.

How it works
The template contains a table made with HTML and CSS. The CSS includes the usual code for templates that float to the right ("float: right; clear: right;"). The border style must be repeated for each cell because I would need style tags or an external stylesheet to create a CSS class.

This template uses the "conditional" hack to hide any table rows that are not in use. Entire rows are hidden on the server side because CSS "empty-cells: hide;" fails to hide rows in Konqueror, though it works in Firefox.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: Template:Guide to Unix/Clink


text:
Template:Guide to Unix/Stub

''This page or section of Guide to Unix is a stub. You can help by [ expanding it].'' :This template adds page to /Stubs.

How it works
Including this template somewhere on a module or section places that module in /Stubs. It is then easy to use that category page to find all stubs in the book Guide to Unix.

For Guide to Unix, it is better to use this than stub or sectstub.

title: Template:Guide to Unix/Stub


text:
Template:Guide to Unix/Contribute

''Guide to Unix is incomplete. At Wikibooks, you can edit this book now. Here are some suggestions for improvements:''

How to use
This paragraph can appear on multiple Guide to Unix pages, usually above the various tables of contents. It suggests how to contribute. The paragraph provides a link for editing itself. This updates the paragraph on all pages that use it.

How it works
The HTML "div" element (between  and   tags) is a simple block-level element to which one can apply CSS style. In contrast, HTML "span" is an inline-level element. A "div" appears above or below other paragraphs while a "span" is embedded in paragraphs.

The template contains two "div" elements. The inner div contains the "Edit this paragraph" link and floats to the right. The floating actually causes the inner div to appear inside the outer div (the green box) but with the text of the outer div wrapping around it. See the CSS spec on floats.

The outer div causes that paragraph to have a green background. The color #ccffcc has cc red light, ff green light, and cc blue light, which makes it almost white (#ffffff). It appears light green because it has less red and blue light than white does. Light values range from 00, 01, 02, ... fd, fe, ff.

title: Template:Guide to Unix/Contribute


text:
Arabic/LearnRW/Take-Apart Template

Examples

 * 1)              بـتـثـفـف= ب + ت + ث + ف + ف
 * 2)                       بـف= ب + ف
 * 3)   ثـثـثـت = ث + ث + ث + ت

Exercise
Instructions: Write out the letters that the word is made up of. Write out the letters in lonely form.

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)    =؟

 * 1)   =؟

 * 1)     =؟

 * 1)    =؟

 * 1)         =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)    =؟

 * 1)   =؟

 * 1)     =؟

 * 1)    =؟

 * 1)         =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)    =؟

 * 1)   =؟

 * 1)     =؟

 * 1)    =؟

 * 1)         =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)  =؟

 * 1)    =؟

 * 1)   =؟

 * 1)     =؟

 * 1)    =؟

 * 1)         =؟

 * 1)  =؟

 * 1)  =؟

Answers

title: Arabic/LearnRW/Take-Apart Template


text:
Arabic/LearnRW/Transliteration Template

COPY THE SOURCE OF THIS PAGE TO THE PAGE THAT YOU WILL BE USING THIS TEMPLATE ON. ANYTHING IN COMPLETE CAPITAL LETTERS IS NOT TO BE INCLUDED IN THE NEW PART. IT IS INFORMATION FOR THE EDITOR/MAKER OF THE EXCERCISE/YOU.

Examples:
 * 1)  بـتـت     b-t-t
 * 2)  بـثـبـتـف    b-th-b-t-f

A group of letters is shown connecting as they would in a word. Your job is to read the word from right-to-left (that is the way Arabic is written and read), and write the English transliteration letters (from left-to-right). Separate transliterated letters with dashes.

Note: Because you have not learnt about writing vowels in Arabic, the transliteration only includes consonants. For example, "b-t-t" means that the word contains the consonants in the word in that order; the vowels are not indicated yet. Because the vowels aren't indicated, the pseudo-word might be pronounced ba-ta-ta, bi-ti-ti, bit-ti, bat-tu, bu-tat, bat-ta and so on.

We learnt previously that the letter ب (baa) makes the "b" sound; its name is "baa". So بتت b-t-t can be spelt out (baa, taa, taa) but the pronunciation of the word is not the same as how it is spelt. Once you learn about writing vowels you will be able to read words with vowels.

Exercise 1
Transliterate, use the reference chart below the exercise to help.

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

 * 1)

title: Arabic/LearnRW/Transliteration Template


text:
Talk:Python Programming/Game Programming in Python

Hi, i am looking for some programing ideas to enter in a computer science competition. i am currently using python. Any help!

Check out pygame

Removed incorrect and bias statement
I removed the line "However the Python binding is an afterthought so most often late versus the C++ engine when usable at all. Python bindings are very inefficient and limited.", because in Ogre's case, the bindings are actually dynamically generated, and as such, only require a minimal amount of maintenance to keep up to date. In fact, the python bindings are sometimes ahead of the official release version, and because they're dynamically generated, support nearly every one of Ogre's excellent third party modules.

In addition, because the engine itself is C++ and python simply controls it, in my own performance tests between Ogre's C++ demos and python demos, there is about a 6-10% performance hit when using python, which seems more than reasonable given the dramatic development time differences between python and C++. Couple that with the fact that, once your game/product is nearing completion, you can go back and rewrite heavy number-crunching methods (pythons main weak spot, performance-wise) in C++, as well as JIT compliers like Psyco (psyco.sourceforge.net), and you have an incredibly efficient way to develop a game or other 3d application.


text:
Utopia/Introduction

The word "utopia," in its most common meaning, refers to a socially or politically perfect state or nation. Alternatively, it can also be understood to mean the human efforts to create a better society, or more specifically, a perfect society that does not yet exist.

Ideas which could radically change societies or governments are may be referred to as "utopian ideas," often in a negative tone. Similarly, "utopia" can be used in a negative way; often to discredit ideas deemed too optimistic, unrealistic, or hopeful to be practically realized in the world as it exists today.

"Utopia" has also been used to describe actual communities founded in an attempt to create a perfect or utopian society.

Conversely, the word "dystopia," presumably a derivative of the word "utopia," can be used to refer to a failed Utopia; that is, to a nightmarish civilization with laws or a social order contrary to the utopian ideal.

title: Utopia/Introduction


text:
Utopia/Economics

People do have to eat and live and find shelter. People must have their basic physiological needs met before they can go on to strive for the gratification of their higher needs. These higher needs include love, fulfilling social relationships, self-actualization, and so forth.

Economics deals with allocating limited resources in the most advantageous ways possible.

When you're creating a society it is important to see that the nations of today with the most successful economies are the ones that practice a free-market capitalism. Critics of capitalism point to the potential instability of a capitalist system or to the tendency of free markets to result in some members of society living in poverty or without prospects for self improvement. A separate concern that does not touch on political economics directly is the tendency of free market economies to cater to human appetites to the point of encouraging vices. While certain vices may stimulate a community's financial opportunities, they can also prove destructive to public morality in a way that conflicts with the desire for utopia.

However if we attempt to establish this economy through a veil of ignorance which rawl's present's all people within this community would have agreed previously on the laws of the economy. When deciding which laws to enact the community should definitely vote through census. By doing hosting a census vote, and only through that can we make everybody within this community truly accept their economy.

title: Utopia/Economics


text:
Utopia/History

It is important to learn from our mistakes. Extensive research should be done on previous attempts to build an utopia.

History of the Term
The word 'utopia' was coined by Thomas More in 1515 as the name of his fictional island. The name itself is a play on the Greek ou-topos, meaning "no place", and eu-topos, meaning "good place" --an ironic joke on the likelihood of such a paradise existing. Since then 'utopian' and 'dystopian' have become literary genres of their own. Plato’s ‘Republic’ is now often referred to as a utopia as is Swifts ‘Gulliver’s Travels’ and even the biblical story of the Garden of Eden. Famous modern attempts to understand a utopia include George Orwell’s classic 1984, Robert Heinlein's ‘Stranger in a Strange Land’ and Aldous Huxley’s ‘Brave New World.’

The term utopia has become a by-word for idealism, often used now as an ironic criticism of an overly enthusiastic plan. Many authors have described their utopia with great practicality and attention to detail but still the term utopia has become stereotyped as reflecting ambitious notions that are too optimistic and idealistic for practical application; readers often argue their concepts are impossible, their logic refutable and thus their conclusions void.

Utopia in Philosophy
More, Sir Thomas: Utopia Orwell, George: 1984, Animal Farm Huxley, Aldous: Brave New World; Brave New World Revisited Bradbury, Ray: Fahrenheit 451

Historical and Contemporary Utopian Movements

 * ../North American Phalanx/
 * ../New Harmony/
 * ../Onedia Society/
 * ../The Kibbutz Movement/ Kibbutz

Source

 * Utopia

title: Utopia/History


text:
Utopia/Preface

The aim of this book is to collect examples of Utopian ideologies both past and present; to examine attempts — both successful and otherwise — to implement them; and to analyze the factors at play in utopian thinking. Additionally, critiques of utopian thoughts and ideals and the way in which they relate to utopian thinking will be examined in similar depth.

A further aim of this writing is to assist those who wish to create the "perfect" society. Since the beginning of time, humans have attempted, with varying levels of success, to improve their respective societies in order to make them more harmonious systems; the problem for those thinkers developing theories of the perfect society is that it is oftentimes much easier to "improve" an existing society than it is to build a better one from nothing—though more than a few have tried to build "from scratch" in ways ranging from peaceful change to violent revolution.

The reader may wish to consider the following questions while reading or contributing to this book: If you had the opportunity to build the perfect society — considering the available resources in the land in question, the level of scientific knowledge, the developmental level of computer science, and so forth — what would it be? What economic system would you choose? What political system would be implemented? What laws passed, what rights recognized, what constitution written? And are attempts to create a perfect society ultimately doomed to failure?

title: Utopia/Preface


text:
Utopia/New Harmony

New Harmony, formerly named "Harmony," was built by the Harmony Society, headed by George Rapp (also known as Johann Georg Rapp). This was the second of three towns built by the German religious group, known as Rappites. When the society decided to move back to Pennsylvania, they sold the 30,000 acres (121 km2) of land and buildings to Robert Owen, the Welsh utopian thinker and social reformer for $150,000, who then changed the name from "Harmony" to "New Harmony." Owen recruited residents to his model community, but a number of factors led to an early breakup of the communitarian experiment.

The experiment was established in 1825 and dissolved in 1829 due to constant quarrels. The town banned money and other commodities. American individualist anarchist, Josiah Warren, who was one of the original participants in the New Harmony Society, asserted that community was doomed to failure due to a lack of individual sovereignty and private property. He says of the community: "It seemed that the difference of opinion, tastes and purposes increased just in proportion to the demand for conformity. Two years were worn out in this way; at the end of which, I believe that not more than three persons had the least hope of success. Most of the experimenters left in despair of all reforms, and conservativism felt itself confirmed. We had tried every conceivable form of organization and government. We had a world in miniature. --we had enacted the French revolution over again with despairing hearts instead of corpses as a result. ...It appeared that it was nature's own inherent law of diversity that had conquered us ...our "united interests" were directly at war with the individualities of persons and circumstances and the instinct of self-preservation... and it was evident that just in proportion to the contact of persons or interests, so are concessions and compromises indispensable." (Periodical Letter II 1856)

title: Utopia/New Harmony


text:
Mac OS X Tiger/A Quick Look Under the Hood

Underneath the pretty desktop background, candy-like graphics, and slick effects on the surface of Mac OS X is a UNIX foundation. UNIX handles all of the under-the-hood tasks of managing accounts, files, networking, performance, etc. While Apple's interface is very pretty and easy-to-learn, power users may wish to try out interacting with their Mac through UNIX's more traditional interface: the command line.

Please note that this chapter covers only the very basics of using the command line, and assumes you have no experience with command lines, programming, etc. If you want a more advanced look at UNIX, please view the ../Advanced Concepts/ chapter.

As with all versions of Unix, OSX consists of a kernel (as described in history) and some core utils that are available through the bash shell. The kernel and the core utils are open-source, but not the additional pieces of osx such as finder and the various components that make OSX what it is. The UNIX theory consists in providing only basic functionalities (for example, the cp program can only copy files from one location to another) and so this model is fast, bug free, and secure because it's easily maintainable (taken from a Linux kernel programming book); everything is split into small parts for this reason.

Getting to the Command Line
To access the command line, you'll use the Terminal Utility. It's in the Applications > Utilities folder.

bash: The UNIX Finder

 * ls
 * cp
 * rm
 * rmdir
 * tar
 * mkdir
 * more
 * ps
 * ssh
 * scp
 * man

compiler version
http://www.voxgratia.org/docs/compilers.html

Unix environment and programs
As in all Unix systems, you can install and run UNIX software (for example X11, .KDe, etc.) on Mac OS X. There is even the Gentoo (Linux distribution) package system that runs under OSX (portage)

The Fink project ( http://fink.sourceforge.net ) maintains a collection of packages that have been ported to OSX and makes them available for download as a coherent distribution. Fink uses Debian tools like dpkg and apt-get to provide powerful binary package management. You can choose whether you want to download precompiled binary packages or build everything from source.

The only caveat is that the fink tools install their own libraries, and development tools, which if not handled carefully, can interfere with normal operation of your osx system.

Limitations
the file-system is not case sensitive by default, but this is configurable at install time. Also, unlike other unix variants such as linux, command-line parameters can come only before the main arguments, instead of before or after.

Navigation
Previous Page : The Desktop Next Page : The Mac Interface


text:
Pro Engineer/Design Intent

Why Learn Design Intent?
Pro/Engineer [also: Solidworks & Autodesk:Inventor] is a parametric modeler. That means that features can be related to one another in a number of different ways. These relationships govern how the model will behave when changed. Design intent is the careful control of these relationships so that they correctly govern the intended behavior of the model. With good design intent, models can be updated almost effortlessly. Changes made to one aspect of a model propagate appropriately through the model, assembly, and drawing. With poor design intent, features may update inappropriately, or fail.

Design intent builds intelligence into the model.

Part model references
The first way to control design intent in a Pro/Engineer model is simply to select references appropriately when modeling a part. Except for the default datum plane, every feature must reference something else. You create a reference when you choose a sketching plane or any sketcher reference.

Reference stable features for stability

 * Use datum planes as a baseline. Solid features may change.  For instance, a hole referencing an edge may fail when a round or chamfer is created on that edge.  A hole referencing a face may fail when a draft is created on that face.
 * When using solid features as references, choose more stable features. That is, reference faces before edges and edges, when necessary, before vertices.
 * Create a base feature with the basic shape of a part. Use its features
 * Use the model tree and Insert Here functionality to control feature order.
 * Features can only reference other features that occur earlier in the model tree. Features cannot reference subsequent features.

Model for design intent

 * When choosing references, ask how the model might change. Should a hole stay centered on the part?  Should it remain a fixed distance from some face or edge?  Should it move with an associated feature, such as a boss?
 * Consider the full range of possible changes. Will a drastic change in a dimension make a sketch impossible to resolve, for instance by turning it inside-out?

title: Pro Engineer/Design Intent


text:
User talk:64.12.117.12

Please stop adding nonsense to Wikibooks. It is considered vandalism. If you would like to experiment, use the sandbox. Thank you. Juliusross 11:42, 23 October 2005 (UTC)

title: User talk:64.12.117.12


text:
Wikibooks talk:GNU Free Documentation License

New FSF Address
It seems that the Free Software Foundation changed their address from 59 Temple Place (address given in this license) to 51 Franklin St (address given at http://www.gnu.org/copyleft/fdl.html and other GNU web pages). So, I think someone should update the copyright to read as this. --Kernigh 15:03, 23 October 2005 (UTC)

Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

Make includeable
Please add tags around all parts of this page which are metadata (e.g. tag at the top). This will allow the page to be included in wikibooks more easily. --Alfakim 14:03, 3 June 2006 (UTC)

Interpreting the GFDL
If one had questions regarding the interpretation of sections of the GFDL, where would one go for "official" answers? -- Jason C Daniels 21:37, 3 April 2007 (UTC)

 * The GNU project maintains the GFDL, so if you needed some "official help" about it, you could ask the GNU people about it on their website. In general, people around here have grown pretty knowledgable about it over time, so we can typically give you a good explanation if you need one. Also, because of the high-volume of images, the admins at Wikimedia commons have become experts on the subject in their own right, so you can consider asking questions there too. --Whiteknight (talk) (projects) 21:56, 3 April 2007 (UTC)

Heading levels
The heading levels make in difficult to include this in printable versions, I think. Can we change it so that the sections are === rather than ==? That way each section of the GFDL won't be at the same level as a book chapter (the entire GFDL should be at the same level as a chapter, and GFDL sections should be the heading equivalent of a section within a chapter). —Chowbok 04:29, 17 May 2007 (UTC)

 * Use Level 1 headings in your printable versions, such as:

= GNU Free Documentation License =

 * Lots of other books already do this, so we shouldnt change the headings. --Whiteknight (talk) 04:31, 17 May 2007 (UTC)

 * Well, I did do that... but that puts <h1> tags in the body of the document, which strikes me as poor form. —Chowbok 04:40, 17 May 2007 (UTC)

 * Maybe we could have another protected GFDL page for print inclusions? Or can I just subst' it? —Chowbok 04:42, 17 May 2007 (UTC)

 * Funny, yesterday I copied this Page for de.wikibooks and thought about the same thing.
 * My work a round is, which allow use to use h2-headings or simple bold with '''.
 * When I think about it, , is the most flexible solution.
 * -- MichaelFrey 05:49, 17 May 2007 (UTC)

As Whiteknight has written above, second level heading in this text are correct. Chapter titles in print versions should be level one. --Derbeth talk 20:17, 17 May 2007 (UTC)
 * I disagree. Anyway, Whiteknight seems amenable to MichaelFrey's solution, and I like it too. Hopefully we can have that implemented soon. —Chowbok 00:13, 18 May 2007 (UTC)

Interwikis
Please, add some interwikis to this page: de:Wikibooks:GNU Free Documentation License es:Wikilibros:GNU Free Documentation License it:Wikibooks:Testo_della_GNU_Free_Documentation_License ja:Wikibooks:Text of GNU Free Documentation License pt:Wikilivros:GNU Free Documentation License Helder 15:01, 13 December 2010 (UTC)


text:
Communication Theory

This book is an introduction to communication theory — the theory of how humans share, encode, and decode what they know, what they need, and what they expect from each other.

Contents

 * 1) Perspectives on Theory
 * 2) /Introduction/: An overview of theory in communication study
 * 3) Theorists and Approaches to Communication
 * 4) /Uncertainty Reduction/: Charles Berger, Richard Calabrese
 * 5) /Propaganda and the Public/: Walter Lippmann, Harold D. Lasswell, Edward Bernays, and Jacques Ellul
 * 6) /Uses and Gratifications/: Herzog, Katz, and friends
 * 7) /The Frankfurt School/: Max Horkheimer and Theodor Adorno
 * 8) Communicative Action: Habermas Commentary
 * 9) /Semiotics and Myth/: Roland Barthes
 * 10) /Orality and Literacy/: Walter Ong
 * 11) /Diffusion of Innovations/: Gabriel Tarde, Everett Rogers
 * 12) /Social Systems/: Niklas Luhmann
 * 13) /Network Society/: Manuel Castells
 * 14) /Nonverbal Communication/

Teoria de la Comunicación

title: Communication Theory


text:
Poker/Omaha

Omaha is a variant of Texas Hold'em Poker. Omaha is considered, by some, to be the hardest game of Poker to master. Of all of the different games of Poker, Omaha is for many the hardest to learn to play and the hardest to bluff in. It is played most often at fixed limits, like Texas Hold'em and pot limit.

The play of Omaha is very similar to the play of Texas Hold'em and other Poker games, but different because you cannot use all of your cards.

How to Play
The dealer will deal each player four cards, starting to his left. Once all players receive their cards a round of betting occurs. Omaha is rarely played no-limit, meaning you can at any time bet any amount. It is generally a limit or pot-limit game. The betting starts to the left of the Big Blind. The Big Blind and the small blind are just left of the dealer. The small blind, who is one left of the dealer, has to put half of his "blind" or payment for seeing your cards into the pot before he can see his cards. It is a forced bet. The Big Blind, who is two left of the dealer, pays the entire "blind" before he can see his cards. This, too, is a forced bet. Once cards are dealt the player left of the Big Blind can call the blind, bet, or fold. Betting rotates around the table until it reaches the Big Blind who can call any subsequent bets, make a bet himself, or check, meaning that if nobody has bet, play will go to the flop for free.

The Flop
Once the first round of betting is over, here comes the flop. The top card of the deck is "burnt" or discarded, never to be seen or played. Then the dealer takes three cards for everyone to see. These are "community" cards. Community cards can be used by all players to create a five card hand along with your "hole cards" or the cards dealt to you by the dealer at the start of the hand. The catch for Omaha, however, is that unlike Hold 'Em, you cannot use all of your cards or just one of your cards in your hand. You must use exactly two cards from your hand and three from the board. In Hold'Em you can use one from your hand and four from the board or if your hand is particularly unworthy, all cards on the board! So, once the flop is dealt, another round of betting occurs, this time starting directly left of the dealer. The players can once again "check, bet, or fold or raise" to another's bet. Once this round of betting is complete, comes the turn card.

The turn
Prior to the turn card another card is "burnt" or discarded. Then the turn card is put next to the flop. This is another community card that all players can use in making their five-card hands. Do not make the mistake of thinking you can use four of the cards on the board and one in your hand, or any other number than three on the board and two in your hand. Again, when the turn is dealt, a round of betting occurs starting left of the dealer. Once this round of betting is complete, comes the "River" card.

The River
Once the round of betting for the turn is complete one card from the top of the deck is "burnt" and the river card is shown on the board. This is another community card, and once again a round of betting occurs. After this round of betting is complete hands are shown and the player with the best five-card hand wins. Hand rankings are the same as hand rankings in Texas Hold'Em and other Poker games.

Basic Strategy
Omaha is a dynamic game in which the strength of ones hand (and that of your opponents) may dramatically change during the hand. It is important to realise what the nuts is and make sure you have it or close to it before investing large numbers of chips. For example in a 5 way pot on a board with 3 to a flush, it would almost always be a mistake to call a bet relying a straight or 3 of a kind to hold up. Similarly on a paired board it would be a mistake to invest too many chips with merely a flush or straight.

For this reason it is important not to slow play your hands in Omaha, as you will be drawn out on with a much higher frequency than in Hold'em. It is better to play aggressively and quickly with your best straights and flushes because if the board pairs they can become practically worthless.

Probability derivations can be calculated.

title: Poker/Omaha


text:
Software Engineers Handbook/Language Dictionary/PLI

PL/I
Here is the Wikipedia entry.

Type
PL/I is a full procedural language.

Execution Entry Point
The program has its entry point specified as, in a procedure statement, as in:

Column specialties
There are no column specialities.

General Syntax
An assignment example:

In this numeric assignment statement,  is subtracted from , and the result multiplied by the value of  , before storing in variable. In this example string assignment, string  is joined to the end of string , and the composite string is stored in string variable.

Note: Using a compile-time option the concatenation operator  may be replaced by another pair of symbols, for being compatible with existing PL/I programs often   is used.

Comments
Every comment commences with the pair  and terminates with the pair. Comments may span lines.

Variable Declarations
Declarations are not compulsory, though most PL/I compilers provide a compiler option to force declarations, while some of the subset compilers insist that every variable be declared.

To declare  as an binary:

To declare  as an binary and give it an initial value of 0

To declare a variable as decimal,

The first declaration is of an integer  stored in decimal format, while the second is of a variable E capable of storing ten digits having 4 digits after the decimal point. To initialize, write: Note that values such as 0.1 are stored exactly.

To define a floating-point variable: that uses single precision hardware; and double precision: and extended precision: (typical declarations for the PC). The numbers 15 and 18 indicate the number of decimal digits that will be stored. (Although the values are actually held in binary, the decimal precisions are more convenient to recall than specifying the precisions in binary.) To specify a complex variable, simply include the word  in the declaration, thus: The assignment includes the complex constant 5.2+8i where 5.2 is the real part and 8 is the imaginary part.

The arithmetic data attributes for base (binary or decimal), scale (fixed or float) and mode (real or complex) may appear in any order, the attribute for precision (e.g. ) must not be the first one.

The following definitions are equivalent, except for the last one.

To declare a variable having the picture attribute: describes variable  as having as total of 7 decimal digits, with three digits after the decimal point. The decimal point is held in storage. The letter  indicates the position of the actual decimal point. For Europe, the specification may include a comma: To declare variable  as a character string: String  can store exactly 10 characters.

To declare variable  as a character string capable of storing up to 100 characters: A simple assignment: V holds the three characters. V holds the 8 characters.

PL/I also permits bit strings: permits bit strings to be stored, of length ten. The assignment statement: stores the bits in the given order. Such bit strings can be searched, etc., just like character strings.

Data structures, or aggregates, may be declared:

Arrays are declared by one of the above means, along with dimension information: specifies an array of ten elements,  through. The default lower bound is unity. To specify a different lower bound: declares a 16-element array  of floating-point elements.

Multi-dimension array are declared by separating the dimensions with commas defines a 2-dimensional array of 4 elements:,  ,  ,

To handle dates given as 2-digit years and as 4-digit years, possibly intermixed in the same program, the  attribute may be used.

The keywords  and   may abbreviated as   and , many attributes may abbreviated, too.

Output Statements
The first example writes  on the standard output (a screen or printer or file). The words are printed after any output already on that line. The second example starts a new line (the word ) before printing.

Method Declaration/Implementation
Describe how methods/functions/procedures are declared and implemented. The following example is of a complete PL/I program containing a function. The above program contains some typical input and output statements of the list-directed form. The first  statement prints the date. The second requests the reader to type three values representing the parameters of some triangle. The third echoes the inputs as confirmation. The last  statement contains a function reference, , which invokes the function. When it has been computed, the current  statement prints that area. The definition of the function  includes a   statement that lists the parameters required from the calling program, namely, ,  , and. These parameters are defined in the next statement. The  statement also states the type of the result to be returned to the calling program, namely, a floating-point value. This is indicated by. The  statement contains the formula to be used in calculating the area of the triangle. It then returns control to the calling program. A  statement typically includes the name of a variable, but may include an expression (as is the case here).

Scope
The scope of PL/I variables is confined to procedures in which they are declared. The scope extends into any procedures contained within that procedure (except of course any procedures in which a new declaration of the same name occurs).

In the event that a variable is not declared, then the scope of that variable is the whole program. Again, if a declaration (for a variable of the same name) appears in a block that is subordinate to the one(s) where the variable is (are) used, then the scope is excluded from the block containing the declaration.

PL/I has two kinds of blocks. One is the  block that is used for subroutines and functions. The other is the  block. The  block behaves as a   block, except that a   block has no parameters nor does it have to have a label. It is entered in normal sequential execution, whereas a  block can be executed only by executing a   statement or function reference.

Conditional Statements: IF..THEN..ELSE
Consider the two examples of conditional statements: The first example illustrates one optionally-executed statement

The second example shows two optionally-executed statements, the first of which is executed when  > , and the second of which is executed if   <=  ;

When multiple statements are to be executed conditionally, statement brackets  and   are used.

Multi-branch Conditionals: SELECT
The select-group offers a multi-branch evaluation, it may be written in one of the 2 following syntax schemes:

A select-group of scheme type 1 has the form and  (   = 1..n ) may be variables or expressions.

(  = 1..n ) and   may be single statements or do-groups.

The select-group is evaluated as (pseudo code): Evaluate var_or_expr and store it to the variable TEMP. For I = 1 to n:   Evaluate val_I, if the result equals TEMP: Execute unit_I and leave the select-group. Execute unit_other.

The  clause (which may be abbreviated  ) is optional, but if this clause is omitted and none of  equals   a run time error will occur.

A  clause may contain more than 1 value, e.g.

A select-group of scheme type 2 has the form (  = 1..n ) may be logical expressions or logical variables. (  = 1..n ) and unit_other may be single statements or do-groups.

The select-group is evaluated as (pseudo code): For I = 1 to n:   if expr_I is true: Execute unit_I and leave the select-group. Execute unit_other.

An example:

Looping Statements
The basic form of looping statement is: The body of the loop is executed ten times, with control variable  taking the values from 1 through 10. On loop exit, the value of  is one increment more, namely 11. The loop extends to the next  statement. Variations of looping statements are: Multiple iterative specifications may be used: in which the loop will be executed with control variable  taking the values 1 through 10, then 20, 25, 30, 35, ... 100, 120, 140, 160, 180, and 200.

A loop that is conditionally terminated uses the  construct: Such a loop is executed zero or more times, the test being performed at the beginning of the loop. The loop specified by the above statement is executed at least once, the test being performed at the end of the loop.

In the following, a  is used to specify an unusual change in the value of the control variable. In this case, the control variable  takes on the values 1, 2, 4, 8, 16, and so on, until   becomes greater than 1000.

The  form: may be used to traverse a linked list.

and  may be combined: (both examples are equivalent, i.e. the order of  and   in the statement doesn't matter )

may by followed by  or   or both of them: (the last two examples are equivalent)

Order of evaluation:

is evaluated as:

One more example: The following statement specifies that the do-group has to be executed eight times, with the value of I equal to 1, 3, 5, 9, 18, 36, 9, 18.

Boolean Values
In PL/I  strings represents single boolean values: strings may be used as boolean expressions in conditional and loop statements.
 * is interpreted as
 * is interpreted as

Boolean operators may be used for calculating new values: Note: Using compile-time options  operator and   operator may be replaced by other symbols, for being compatible with existing PL/I programs often   is used as ,   is used as.
 * The prefix operator  is used as logical.
 * The infix operator   is used as logical.
 * The infix operator   is used as logical.

Error Handling/Recovery
PL/I provides error detection and error handling. Errors that are detected include
 * floating-point overflow and underflow;
 * fixed-point overflow;
 * division by zero;
 * subscript bound error;
 * substring violation;
 * string truncation.
 * general errors.

The user can permit the system to report the error and perform a default action, or the user can specify a computational action to be executed when a given error is detected.

Events (including errors) are termed conditions.

For a condition to be detected, it must first be enabled. If the condition is enabled, and the corresponding condition occurs, the corresponding -unit (if supplied by the user) is executed.

Consider the following code:

In the event that the product  exceeds the maximum value permitted, the   condition is raised, and the  -unit for   is executed. The -unit here is one of the simplest, and merely transfers control to the statement labelled   (where, perhaps, the program deals with the next set of values).

The keyword  causes the running program to print an error message, along with the statement number where the error occurred.

A more general example follows:

In this example, the error detection and handling parts are shown in upper case. Subscript checking is enabled by the condition prefix  (parenthesised before the   statement). Before any statements are executed, the  statement must be executed, which establishes the action to be carried out in the event of a subscript error. The next statement executed is the input statement, which reads in a value, say 12. The loop is entered, and initializes ten values of x. On attempting to initialize, the   condition is raised, and causes the   unit   to be executed. causes an error message to be printed along with the statement number, and then statements within the  block are executed, namely the   statement, which prints. The program then s. Some specific conditions are:

Some conditions are provided to handle everyday events, for example, end of file and end of page. For example, to print a page number on the top of each page:

To detect the end of the input file, and to transfer to a named statement:

The programmer can invent his own conditions, and can signal them.

The  statement is provided to test a given  -unit (error-handler) during program testing. For example, To raise a user-defined condition called, the statement   would be used.

Containers

Algorithms

 * Sort algorithms and an XML parser is provided by IBM for its compilers.

Garbage collection
Any garbage collection is automatic. All variables with the automatic attribute or allocated with the     are removed from storage at the end of the block where they are declared. All allocated storage ( statement or  ) is removed from storage at the end of the program.

Physical Structure
The libraries of the standard functions are all automatically provided; it is unnecessary to do anything to obtain access to them, such as to specify directories or to use  statements or the like.

Tips

 * Source programs may be written in upper or lower case. There is no difference between the cases, except within strings.
 * Varying strings (declared with the attribute ) are similar to C's char.

For an exact equivalent, in Enterprise PL/I for z/OS you may use the attribute, in which strings are zero-terminated.

Without the attribute, strings are of fixed length. Such strings always store the specified number of characters. Thus, stores eight characters, namely,  followed by five blanks, whereas requires a storage of 10 bytes: 2 bytes for the actual length of V and 8 bytes for the characters. This latter feature makes possible the assignment which appends the word dog to what is already stored in V (up to a maximum of 8 characters in this example, of course).

Content of V after V = 'abc';: +---+---+---+---+---+---+---+---+---+---+ |  3   | a | b | c | ? | ? | ? | ? | ? |  /* "?" means: value is undefined */ +---+---+---+---+---+---+---+---+---+---+          1   2   3   4   5   6   7   8     /* index of character */

Content of V after V = V || 'dog';: +---+---+---+---+---+---+---+---+---+---+ |  6   | a | b | c | d | o | g | ? | ? |  /* "?" means: value is undefined */ +---+---+---+---+---+---+---+---+---+---+          1   2   3   4   5   6   7   8     /* index of character */

is equivalent to C's ; is equivalent to C's. is equivalent to C's.

 * Decimal arithmetic, because it is fixed-point, needs some care.

The built-in functions,  ,  , and   are provided to enable the programmer to specify the precision of each result. Thus they help to avoid overflow. For decimal fixed-point division, it is strongly recommended that the  function be used. Thus, to divide  by , where   has precision  , and   has precision  , the recommended form is: In the  reference, the arguments 10 and 5 direct that the result A/B has a total of ten digits, with 5 digits after the decimal point, respectively. This value is then stored in C. IBM PL/I permits up to 31 decimal digits for fixed-point working.

This enables checking for fixed-point overflow, and range-checking and truncation for strings and for subscripts.
 * When running PL/I programs, use the condition prefixes,  ,  , and  , on the initial procedure statement thus:

 * The lower bound of arrays is unity by default, not zero.

 * Division of integers (whether decimal or binary or mixed) may produce a fixed-point result having a scale factor. Thus, 9/2 produces 4.5000000, unlike Fortran which produces the integer 4. Should an integer result be required,  or   may be used, thus:   or - more generally - , the latter giving 31 bits of precision for a binary integer result. Alternatively, declaring binary integer variables to have maximum precision (typically 31 bits) will ensure that the result of dividing two such integer variables will give an integer result.

Web References

 * IBM manuals: PL/I for MVS & VM
 * IBM manuals: Enterprise PL/I for z/OS

Books and Articles

 * J. K. Hughes, PL/I Structured Programming, 3rd Ed., Wiley, 1986. (beginner to professional; commercial applications)
 * R. Reddy & C. Ziegler, PL/I: Structured Programming and Problem Solving, West, 1986, ISBN 0-314-93915-6. (beginner to advanced)
 * R. A. Barnes, PL/I for Programmers, North-Holland, 1979. (professional)
 * G. F. Groner, PL/I Programming in Technological Applications, Books on Demand, Ann Arbor, MI, 1971. (professional)
 * M. E. Anderson, PL/I for Programmers, Prentice-Hall, 1973. (professional)
 * D. R. Stoutemyer, PL/I Programming for Engineering & Science, Prentice-Hall, 1971. (professional)
 * E. Sturm, Das neue PL/I (fur PC, Workstations and Mainframe), 5th Ed., Vieweg-Verlag, 2002.


text:
Talk:Turing/If statements, cases

How do you make a program that asks for password, and if the user gets the password right he gets into the program;however, if he gets it wrong three times, it sends him somewhere else ?

title: Talk:Turing/If statements, cases


text:
Visual Basic/Regular Expression Tester

Introduction
This is a very small program that demonstrates that useful programs do not need to be large. While toying with the idea of automated download and build of source included in Wikibooks I needed to test some Regular Expressions. I searched the Web for ready made tools but found nothing that really fitted what I wanted to do. Eric Gunnerson's C# tool is very good but relies on the .NET libraries which seems an unnecessarily large overhead for such a small program. So I built my own in about fifteen minutes. Here it is, it has the bare minimum of error checking, the controls are not neatly arranged and the form is not resizeable, or rather it is but the controls don't. It has a lot of limitations and definitely needs improvement, see Exercises.

frmRegExpTester.frm
This form is the only module in the program. All the difficult work is done by the VBScript Regular Expression Library. See Regular Expressions.

The control layout on the form is just what first came to mind. It definitely needs improvement in several areas: resizeability, tab order, etc.

There is a control for each of the properties and methods of the RegExp class so you can exercise all of the capabilities of it. each of the controls reacts to the Changed Click events by setting properties as appropriate and calling both the Test and Execute methods.

VERSION 5.00 Begin VB.Form frmRegExpTester Caption        =   "Form1" ClientHeight   =   11700 ClientLeft     =   60 ClientTop      =   360 ClientWidth    =   11010 BeginProperty Font Name           =   "System" Size           =   9.75 Charset        =   0 Weight         =   700 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty LinkTopic      =   "Form1" ScaleHeight    =   11700 ScaleWidth     =   11010 StartUpPosition =  3  'Windows Default Begin VB.TextBox txtTestresult BeginProperty Font Name           =   "Fixedsys" Size           =   9 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   495 Left           =   1320 TabIndex       =   10 Text           =   "Text1" Top            =   2880 Width          =   4095 End Begin VB.TextBox txtExecuteresult BeginProperty Font Name           =   "Fixedsys" Size           =   9 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   9135 Left           =   6840 MultiLine      =   -1  'True TabIndex       =   9 Text           =   "frmRegExpTester.frx":0000 Top            =   2520 Width          =   4095 End Begin VB.TextBox txtReplace BeginProperty Font Name           =   "Fixedsys" Size           =   9 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   615 Left           =   960 MultiLine      =   -1  'True TabIndex       =   5 Text           =   "frmRegExpTester.frx":0006 Top            =   1440 Width          =   8295 End Begin VB.CheckBox chkMultiLine Caption        =   "Multiline" BeginProperty Font Name           =   "MS Sans Serif" Size           =   8.25 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   495 Left           =   3360 TabIndex       =   4 Top            =   840 Value          =   1  'Checked Width          =   1575 End Begin VB.CheckBox chkIgnoreCase Caption        =   "Ignore Case" BeginProperty Font Name           =   "MS Sans Serif" Size           =   8.25 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   375 Left           =   1800 TabIndex       =   3 Top            =   960 Value          =   1  'Checked Width          =   1575 End Begin VB.CheckBox chkGlobal Caption        =   "Global" BeginProperty Font Name           =   "MS Sans Serif" Size           =   8.25 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   375 Left           =   240 TabIndex       =   2 Top            =   960 Value          =   1  'Checked Width          =   1455 End Begin VB.TextBox txtPattern BeginProperty Font Name           =   "Fixedsys" Size           =   9 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   615 Left           =   840 MultiLine      =   -1  'True TabIndex       =   1 Text           =   "frmRegExpTester.frx":000C Top            =   120 Width          =   8535 End Begin VB.TextBox txtSource BeginProperty Font Name           =   "Fixedsys" Size           =   9 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   6735 Left           =   0 MultiLine      =   -1  'True TabIndex       =   0 Text           =   "frmRegExpTester.frx":0022 Top            =   4920 Width          =   5655 End Begin VB.Label Label3 Caption        =   "Test status" BeginProperty Font Name           =   "MS Sans Serif" Size           =   8.25 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   255 Left           =   0 TabIndex       =   11 Top            =   3000 Width          =   1215 End Begin VB.Label Label2 Caption        =   "Execute status" BeginProperty Font Name           =   "MS Sans Serif" Size           =   8.25 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   255 Left           =   5520 TabIndex       =   8 Top            =   2640 Width          =   1215 End Begin VB.Label Label1 Caption        =   "Replacement" BeginProperty Font Name           =   "MS Sans Serif" Size           =   8.25 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   375 Index          =   1 Left           =   0 TabIndex       =   7 Top            =   1560 Width          =   735 End Begin VB.Label Label1 Caption        =   "Pattern" BeginProperty Font Name           =   "MS Sans Serif" Size           =   8.25 Charset        =   0 Weight         =   400 Underline      =   0   'False Italic         =   0   'False Strikethrough  =   0   'False EndProperty Height         =   375 Index          =   0 Left           =   0 TabIndex       =   6 Top            =   240 Width          =   735 End End Attribute VB_Name = "frmRegExpTester" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Option Explicit

The RegExp instance is available to all the code in this module although this is not strictly necessary because we could create a new one each time. Private moRe As RegExp Each of the Boolean properties is represented by a CheckBox control. The click event for each one simply sets the appropriate property value and calls the Execute method via the xExecute local subroutine.

Private Sub chkGlobal_Click moRe.Global = chkGlobal = vbChecked xExecute End Sub Private Sub chkIgnoreCase_Click moRe.IgnoreCase = chkIgnoreCase = vbChecked xExecute End Sub Private Sub chkMultiLine_Click moRe.MultiLine = chkMultiLine = vbChecked xExecute End Sub When the form is created the Initialize event handler is called. This creates the RegExp instance and sets the properties to correspond to the values of the controls.

Private Sub Form_Initialize Set moRe = New RegExp With moRe .Global = chkGlobal = vbChecked .IgnoreCase = chkIgnoreCase = vbChecked .MultiLine = chkMultiLine = vbChecked .Pattern = txtPattern End With End Sub

When the user changes either the regular expression or the source text the output is updated by calling xExecute

Private Sub txtPattern_Change xExecute End Sub Private Sub txtSource_Change xExecute End Sub

This is the heart of the program. All it does is to call the Execute method and then construct a string to represent the result. If the pattern is invalid then the Execute method will raise an error. this is trapped and the error description used instead of the result. The result object is declared as Object because the return type can be either Match or MatchCollection depending on whether there is only one match or more than one. The results are shown in the txtExecuteResult and txtTestresult text boxes.

Private Sub xExecute moRe.Pattern = txtPattern Dim o As Object On Error Resume Next Set o = moRe.Execute(txtSource) If Err Then txtExecuteresult = Err.Number & ", " & Err.Description Else On Error GoTo 0 If TypeOf o Is Match Then txtExecuteresult = xMatchToString(o) ElseIf TypeOf o Is MatchCollection Then txtExecuteresult = xMatchCollectionToString(o) End If   End If    On Error GoTo 0 On Error Resume Next txtTestresult = moRe.Test(txtSource) If Err Then txtTestresult = Err.Number & ", " & Err.Description End If   On Error GoTo 0 End Sub

The whole purpose of the program is to show the user what the result of matching the regular expression to a text string will be. To do this we simply create a string that represents a Match or MatchCollection object. Private Function xMatchCollectionToString(ByRef roMatchCollection As MatchCollection) As String Dim lX As Long With roMatchCollection xMatchCollectionToString = ".Count:" & .Count & vbCrLf For lX = 0 To .Count - 1 xMatchCollectionToString = xMatchCollectionToString _ & "Item " & lX & vbCrLf _ & xMatchToString(.Item(lX)) Next lX   End With End Function Private Function xMatchToString(ByRef roMatch As Match) As String With roMatch xMatchToString = ".FirstIndex:" & .FirstIndex & vbCrLf _ & "   .Length:" & .Length & vbCrLf _ & "    .Value:" & .Value & vbCrLf _ & ".SubMatches:" & vbCrLf _ & xSubMatchesToString(.SubMatches) & vbCrLf End With End Function Private Function xSubMatchesToString(ByRef roSubMatches As SubMatches) As String Dim lX As Long With roSubMatches xSubMatchesToString = ".Count:" & .Count & vbCrLf For lX = 0 To .Count - 1 xSubMatchesToString = xSubMatchesToString _ & "Item " & lX & vbCrLf _ & """" & .Item(lX) & """" Next lX   End With End Function

regexptester.vbp
The project file is very simple. No unusual references except the regular expression library.

Type=Exe Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#..\..\..\..\..\..\WINNT\System32\stdole2.tlb#OLE Automation Reference=*\G{3F4DACA7-160D-11D2-A8E9-00104B365C9F}#5.5#0#..\..\..\..\..\..\WINNT\System32\vbscript.dll\3#Microsoft VBScript Regular Expressions 5.5 Form=frmRegExpTester.frm Startup="frmRegExpTester" HelpFile="" Title="prjGet" Command32="C:\users\kjw\homepage\website\vb\wikirepository\Jarithmetic_Round_Two_Implementation.html" Name="prjRegExpTester" HelpContextID="0" CompatibleMode="0" MajorVer=1 MinorVer=0 RevisionVer=0 AutoIncrementVer=0 ServerSupportFiles=0 VersionCompanyName="" CompilationType=0 OptimizationType=0 FavorPentiumPro(tm)=0 CodeViewDebugInfo=0 NoAliasing=0 BoundsCheck=0 OverflowCheck=0 FlPointCheck=0 FDIVCheck=0 UnroundedFP=0 StartMode=0 Unattended=0 Retained=0 ThreadPerObject=0 MaxNumberOfThreads=1

Exercises:
 * Run the program and see if you can cause it to crash,
 * Tidy up the user interface, add accelerator keys to aid navigation, fix the tab order,
 * Think of a feature that might be worth adding and add it.

title: Visual Basic/Regular Expression Tester


text:
Arabic/Problem Informing

'''If you have a problem with any page in this book, there is something you can do. Here are some options.'''

Inform the editors
The easiest thing you can do is: If you want to make a request start with "==User Request==" without the quotation marks. If you have a problem start with "==User: Problem==" without the quotation marks
 * 1) Click the "discussion" tab of that page
 * 2) Click the "edit this page" tab
 * 3) explain the problem, in the bottom of the large textbox
 * 1) press the "Save page" button.

Editing it yourself
If you know the problem, and know how to fix it. Click the "edit this page" tab, make changes, write what you did in the "Summary:" text box. Then click the "Save page" button.

title: Arabic/Problem Informing


text:
OpenOffice.org/Writer

OpenOffice User's Manual: OpenOffice.org Writer OpenOffice.org's Writer is a very useful word processor. Writer's native file format is .odt, which is an open document format (Older versions of OOo used the native format .sxw). Saving in native format is always recommended even if you're planning to save it to another Office format like Word's .doc format, because this ensures that no formatting would be lost because of .doc's inability to save certain formatting elements. (more about Open Document Format)

Your First Document
Open OpenOffice Writer. In Windows you can do this from the taskbar (if you set up quickstarter during install) or its program group. To open from the quickstarter right-click on the icon and select "Writer". In Linux you can usually open it from the OpenOffice Writer Icon on the taskbar or dock, from its entry in your "start" menu, or with the shell command "openoffice -writer &".

Type "Hello World" and save. To save click on the disk icon or go File > Save As... Save the document as hello.odt (if you are using 2.0.0 or 1.1.5) or hello.sxw (if you are using an older version). Don't worry about the extension. Just type the name you want and OpenOffice will automatically use its default extension. We will go over saving in different extensions later.

You have just completed your first document. That was easy, but OpenOffice writer has so much more to offer. Want to do more? Let's turn this document into an Adobe PDF file, a common method of distributing printed material over the internet.

Your First PDF
Open your first document, and check to make sure that you have a PDF viewer installed on your computer (you can download one from Adobe if you don't have one). You should have your document with "Hello World" written in it. Now go to File > Export as PDF... and it should come up with the same window as before. Title it hello again, and click on "Save". This will bring up the PDF Options window, and for now, all you'll need to press is "Export". The various PDF Options are:

 * Range - Select either "All", "Pages", or (if you have highlighted certain text) "Selection". This allows you to choose which pages to export as a PDF, usually all of them.

 * Images - Informs OpenOffice.org how you want images compressed into PDF format. "Lossless compression" will be the best quality, but also the largest. "JPEG compression" produces lossy results, and it's according "Quality" option decides how 'liberally' the compression occurs. The "Reduce image resolution" brings the images DPI (Dots Per Inch) down, which could have an effect if the user zooms into an image, making it more pixelated.

 * General - The "Tagged PDF" option produces a text document that is tagged, IE readable by screen readers for the disabled. To produce a properly formatted tagged PDF, you will have to use the internal stylizing of OOo, and not just concentrate on visual output. There is also "Export Notes", which includes the notes on the document in the PDF while exporting. If you use transitional effects in your document, you can choose whether to leave them intact or not by checking the "Use transition effects" option. "Submit forms in format" only decides how the forms for the document will be formatted.

To learn more about PDF formatting and documentation options, look up the PDF Wikipedia entry.

Saving
saving a document for the first time
 * 1) Open OpenOffice writer, and the program starts.
 * 2) Click on the menu "File", afterwards click on "Save as"
 * 3) Type a filename, in this example "tree"
 * 4) Hit the "save" button

checking which toolbars are enabled
 * 1) Click on the menu "View", afterwards click on "Toolbars", afterwards click on "Standard" (if it isn't already checked).

Basic Formatting Options
If you've used Microsoft Word, or any of most other modern word processing programs, you will have no trouble with making basic formatting changes, such as in changing fonts or changing color. To change the formatting, you'll have to block the texts that you want to format, then click on the appropriate formatting buttons.

The formatting toolbar contains most of the formatting options needed for day-to-day usage.

Let's talk about things inside the formatting toolbar one by one. ''Tip: You can hover your mouse on the buttons on Open Office to know what each button do. ''

Style Control
The leftmost button, is the Styles and Formatting Button. Click on it to show the Style and Formatting dialog. Next to it is a Style dropdown menu, which is basically a list of commonly used styles. Styles are basically predefined formatting, which you can apply on a section of text. Style is also used to determine the structure of your writing. The great thing about using style is that if you change the formatting of a style, all elements in your document that previously applied that style would reflect the formatting change, saving you lots of time from changing them one by one. For now, just digest that, we'll talk more about styling in a moment, after we've finished with the toolbar.

Font Controls
The next two dropdown menus are for controlling Font Name (or Font Type or Font Face) and Font Size respectively. The Font Name dropdown, controls the type of font used whether it is Times New Roman, Arial , Courier New , or some other fonts you might have in your computer. The Font Size dropdown, as it says, controls how big or how small your text looks like.

Standard Formatting Options (BIU)
The next three buttons might be familiar. They are the friendly Bold, Italic, and Underline buttons. If you've gotten more comfortable with OpenOffice, you can also use the shortcuts Ctrl+B, Ctrl+I, and Ctrl+U for Bold, Italic, and Underline respectively. You can also mix these formatting together, forming something like BoldedItalic, BoldedUnderline, ItalizedUnderline , BoldedItalizedUnderlined , etc.

Paragraph Alignment
Ok, now on to the next section. The next four buttons control the text alignment. There are four types of alignment:

Align Left
"Align left" ensures that your paragraphs' leftmost words form a line on the left side of the paragraph. This is the most used alignment, and thus the default alignment for a new blank document. The example of align left is this paragraph. You'll see that the leftmost words make a straight line, while the rightmost words are jagged.

Centered
A centered paragraph ensures that your paragraph would appear in the center. This is usually used for titles. You'll see that the length of the leftmost word to the left margin is equal to the length of the rightmost word to the right margin. This paragraph is an example of centered paragraph.

Align Right
Align right ensures that your paragraphs' rightmost words form a line on the right side of the paragraph. This is usually used for signatures. The example of align right is this paragraph. You'll see that the rightmost words make a straight line, while the leftmost words are left uncontrolled as it fits.

Justified
Justify paragraphs is a combination of align right and align left. A "justified paragraph" would make the leftmost and the rightmost words make a line. To achieve this the spacings between the words or the character are usually adjusted. This is usually used to write in small columns, where the use of align left would make the columns look ugly. This paragraph is the example of justified paragraph.

Bullets and Numbering
The next two buttons, the Bullets and the Numberings button are for creating lists. If you click the Bullets button, a small circle would show up on the start of the paragraph your cursor is in, or on the start of each paragraph you're blocking. The same for Numbering, although a number would show up instead of circle.

Finer control for making bullets and numbering can be found on the Bullet and Numbering Toolbar that would show up whenever your cursor is in a bulleted or numbered list. Feel free to explore what each of the buttons on the toolbar do.

There are also various collections of Bullets and Numbering style in Format > Bullets and Numbering. Here, you can change the bullets and numbering into Roman Number, for example, or into alphabetical instead of plain number, or even a mix of them. You could even control more in depth by changing the settings on the Position Tab and/or Options Tab.

Indentation

 * The next two button controls the Indentation, the first button move the indent to the left, while the second button would move it to the right. Indenting a paragraph would make your paragraph written deeper into the paragraph or nearer to the paper's edge. You can also move the indentation marker on the ruler for finer movement. This paragraph, for example is indented.

Color Control
The last three buttons give you full control for colors. The first button would change the font color, like this red text, the second button would highlight the text, like this cyan highlighted text , and the last button would change the background color, like this yellow-background paragraph. There are big differences between highlighting and background color, when changing the background color, you must change the background of the whole paragraph, while highlighting gives you more control for only highlighting certain part of the paragraph.

Shifting Case of letters
Say you have a sentence "the quick brown fox" and you wish to change it to "THE QUICK BROWN FOX" without retyping it, that is to shift it from lower case to upper case. Writer provides a quick way to do this by shifting the case of a highlighted selection. Just highlight the selection of text you want to shift the case of then right click on that text and in the right click menu select "case/characters" and then select Upper case to make every letter in your selection capital or lower case to make it all lower case.

The Stylist
If you write longer texts, however, you will quickly discover that manually assigning formatting attributes to text can be a tedious task. It's hard to keep over fifty citations or some twenty Headings in exactly the same font face, font size, character spacing and so on. Thankfully, Writer has a tool to help you keep everything clean, simple and consistent.

The Stylist is a small box that contains lots of predefined formatting styles like "Default" or "Heading 1". Let's work on the following example and use the stylist to touch up this chapter in Writer.

Preparation
To do this, we first need to copy this text to Writer, which is very easy using the clipboard. If you did not use the clipboard yet, just do the following: Select the text of this chapter, by positioning the mouse cursor at the start of the chapter, right before the heading ("The Stylist"), then hold down the left mouse button and drag the mouse to the end of the chapter. The selected text becomes highlighted, indicating that whatever we decide to do now will influence this part of our document. Next we click on Edit > Copy to place the selected text in the clipboard. To insert this text in Writer, we click in our document where we want to insert the example text, then choose Edit > Paste. If everything went correctly, we will now have quite some text to work with. Now let's see what the Stylist can do for us.

Applying Styles
If you cannot see the Stylist yet, either choose Format > Styles and Formatting or simply press F11. Among others categories, Writer differentiates between paragraph styles and character styles. We want to apply a paragraph style, so the default category, "Paragraph Styles" selected in the little toolbar at the top of the Stylist is just right.

Let's make the text a little easier to read and indent the first line of some paragraphs. To do this, we click somewhere in a paragraph that we want to apply a the new style to, then choose and double click the "First line indent" style. If everything worked alright, the first line of the selected paragraph is now indented.

"Wait a moment!", you might say, "Wouldn't it have been easier to just click on Format > Paragraph, then change the indentation?" Yes, for one paragraph it might indeed have been easier, but what if you indented lots of paragraphs, then decide that things would look much nicer if all of your manually indented paragraphs should also be a bit separated from each other, as well as regular paragraphs? With styles, this is a breeze - we just change the style you applied to the paragraphs in question.

To change the "First line indent" style, right click it and select "Modify". Switch to the "Indents & Spacing" tab and change the value of the "Above Paragraph" spacing to something higher. Click OK and you will see that immediately all paragraphs that had the "First line indent" style applied are now spaced a bit apart.

But wait, there's more. Because styles help Writer see the logical structure of your document instead of just it's physical layout, it can act in a much more sensible way - a Heading means a lot more to Writer than just big, bold text. One example: If you used heading styles while laying out your text, inserting a camera-ready table of contents is a matter of four clicks: We choose Insert > Indexes and Tables > Indexes and Tables..., then just accept the defaults by clicking OK. If your Browser conserved the headings in this text while copying it over to Writer you will see a brand-new table of contents in your document that lists all the headings in your text, along with their page numbers.

Let's try something and insert a new heading. Insert a new, short line of text somewhere in your document, click somewhere on that line, then double-click the "Heading 1" style to make this paragraph a new heading. Now let's have a look at our table of contents. If everything worked alright... ...nothing changed. Yes, that's right. If Writer were to constantly update a table of contents at the start of your text it would be continuously shifting up and down when the length of the table of contents changes. That's why it's only updated when you explicitly say so. So let's right-click the table of contents, then choose "Update Index/Table". If everything worked out alright, you will immediately get a table of contents that reflects your recent changes to the text. Easy, huh?

This concludes our short introduction to the Stylist. Go ahead, have some fun with it - there's lots of things to discover. Like outline numbering (check Tools > Outline Numbering...). Or styles for whole pages. Or - well, see for yourself!

Insert Numbered Equation
Type fn and then press F3.

OpenOffice.org/Writer OpenOffice.org Writer OpenOffice.org Writer OpenOffice.org/Writer

title: OpenOffice.org/Writer


text:
Template:Guide to Unix/Conditional

How to use
The "conditional" template is a hack implementing a type of conditional statement for templates. One calls the template with a conditional tag like. If the condition is "no", then the wiki software substitutes the conditional tag with the no result. For other conditions (such as "yes" or an arbitrary string different from "no") the wiki software substitutes the conditional tag with the yes result.

Here are some example calls:
 * is
 * is
 * is

In the above examples, the conditional tag is useless, because the condition is already known. But the conditional tag can be placed in other templates such as Clink where the condition is not known. This makes that the template behave differently depending on its parameter. In particular, if a parameter to some template is "no" or defaults to "no", then the template can behave differently by passing that parameter in the conditional tag. The conditional tag is a hack for an feature otherwise missing.

How it works
The conditional template consists of a single call to "callno", but with a hack. The hack is very similar to the hack at "ine" on Wikimedia Meta.

Parameters specified twice
Note that "callno" simply calls the template named by the "no" parameter. Also, callno passes template arguments 1 and 2 to the other template. Think of "callno" as a level of indirection.
 * So is the same as

The hack exploits the fact that a parameter can be called twice, which sets the second value.
 * So is not    but

So instead of Template:Userpage we get Template:Stages. Here is the result of : Unix

Using callno to implement conditional
It might seem that "no" is a strange name for a parameter. However, "no" is also the value to parameter 1 of "conditional" that makes conditional behave differently. Look at this call again:
 * is

We can use "callno" to have "conditional" to call "Echo1st" and display text A in most cases, but to call "echo2nd" and display text B at a "no" condition. In the "callno" call, set parameter "no" to "echo1st". This calls "echo1st" in most cases. Then set parameter " " to "Echo2nd". The refers to the parameter 1 of "conditional", which is the condition. If the condition is "no", this replaces the call to "Echo1st" with a call to "Echo2nd". Otherwise, it sets some parameter which "callno" ignores (unless the parameter is 1 or 2, then it remains ignored because "conditional" replaces parameters by setting them after "no" and " ").

title: Template:Guide to Unix/Conditional


text:
Template:Guide to Unix/Callno

How to use
The "callno" template calls the template named by the no parameter.
 * is the same as

The parameters "1" and "2" can be passed through, but others cannot.
 * is the same as

This template is part of a hack for "conditional".

Errors
If you see a red link to Template:Incorrect template call when using this template, then you forgot to set the "no" parameter.

title: Template:Guide to Unix/Callno


text:
Template:Guide to Unix/Echo1st

How to use
"echo1st" substitutes the first argument, ignoring the second.
 * gives

This template is part of a hack for "conditional".

title: Template:Guide to Unix/Echo1st


text:
Template:Guide to Unix/Echo2nd

How to use
"echo2nd" substitutes the second argument, ignoring the first.
 * gives

This template is part of a hack for "conditional".

title: Template:Guide to Unix/Echo2nd


text:
Category:Sheep recipes

Recipes involving sheep.

title: Category:Sheep recipes


text:
Category:Soup recipes

This page contains recipes for soup; for general information on soup, see the WikiBooks page on it.

cs:Kategorie:Polévky es:Categoría:Sopas fr:Catégorie:Soupes it:Categoria:Primi piatti-Zuppe e minestre nl:Categorie:Soeprecept ru:Категория:Супы sr:Категорија:Супе tr:Kategori:Çorba tarifleri

title: Category:Soup recipes


text:
Persian

Contents

 * Cover
 * Introduction — Background to learning Persian

Lessons

 * The Alphabet:
 * Lesson 1 ( ۱ ) — Introduction to the Persian alphabet (ا ب پ ت ث ج چ ح خ)
 * Lesson 2 ( ۲ ) — The alphabet (continued) (د ذ ر ز ژ س ش ص ض ط ظ)
 * Lesson 3 ( ۳ ) — The alphabet (continued) (ع غ ف ق ک گ ل م ن)
 * Lesson 4 ( ۴ ) — The alphabet (continued), ligatures, diacritics (و ه ی)
 * Level 1 grammar:
 * Lesson 5 ( ۵ ) — Introduction to verbs (هستم ،هست، ...، است، ...)
 * Lesson 6 ( ۶ ) — Noun phrases, ezâfe, demonstrative adjectives
 * Lesson 7 ( ۷ ) — Simple past tense, plurality and formality/deference
 * Lesson 8 ( ۸ ) — Negation, negative copula (بیستم، بیست، ...)
 * Lesson 9 ( ۹ ) — Plural nouns, Arabic plurals, singular verbs with plural inanimate nouns
 * Lesson 10 ( ۱۰ ) — Indefinite clitic ی, homographs
 * Lesson 11 ( ۱۱ ) — Direct objects, prepositions بودن ، داشتن،
 * Lesson 12 ( ۱۲ ) — Present tense, negative present, literary present imperfective
 * Lesson 13 ( ۱۳ ) — Personal enclitics for possession or direct object
 * Lesson 14 ( ۱۴ ) — Light verbs, causative with کردن vs. suffix انیدن or اندن. Passive with شدن
 * Lesson 15 ( ۱۵ ) — Questions: Formal and informal, interrogative adverbs and pronouns
 * Level 2 grammar:
 * Lesson 16 ( ۱۶ ) — Perfective aspect
 * Lesson 17 ( ۱۷ ) — Comparative and superlative adjectives
 * Lesson 18 ( ۱۸ ) — Imperative, subjunctive, conditional
 * Future in colloquial and literary Persian

Appendices

 * Alphabet — The alphabet and transcription
 * Grammar
 * Glossary
 * Further Reading
 * Selected Websites
 * Persian Computing
 * Persian Handwriting
 * Persian Phrases Wikibook

Resources

 * Persian - English Wiktionary

Contribute to this Wikibook
This is a Wikibook. Feel free to edit, enhance, correct, and add to it, in any way that will make it a better learning resource. Contribute to this book to make it a good way for new learners to learn Farsi!

 * How to Contribute
 * Planning

الفارسية Persisch Persa fa:PersianLes1 Persan פרסית Perzisch ペルシア語 Мова людства/Перська

title: Persian


text:
Category:Salad dressing recipes

Recipes for salad dressing.

title: Category:Salad dressing recipes


text:
Category:Vinegar recipes

Recipes involving vinegar.

title: Category:Vinegar recipes


text:
Category:Oil recipes

Recipes involving oil.

title: Category:Oil recipes


text:
Talk:GIMP/Cover

w:Wikipedia:How to use the GIMP authors and history

 * 2005-10-15 12:35 w:User:Paulkimpaul (→The GIMP toolbox)
 * 2005-10-15 12:34 w:User:Paulkimpaul (→The GIMP toolbox)
 * 2005-09-26 02:11 w:User:65.188.253.91
 * 2005-08-05 14:42 w:User:84.188.208.66 (→Further reading)
 * 2005-04-21 03:34 w:User:Beland
 * 2005-04-11 01:51 w:User:Stevertigo
 * 2005-02-10 19:53 w:User:69.160.183.65
 * 2005-01-29 23:42 w:User:Ojw (→Colours and transparency)
 * 2005-01-29 22:02 w:User:Ojw (Link to more info)
 * 2005-01-29 21:40 w:User:Ojw (→Editing an image)
 * 2005-01-29 21:37 w:User:Ojw (Tutorial?)
 * 2004-03-19 15:47 w:User:Nikai m (sp)
 * 2004-01-26 05:17 w:User:Pakaran m (Reverted to last edit by Branko)
 * 2004-01-26 05:15 w:User:158.111.4.26
 * 2003-03-25 15:57 w:User:Branko (new)

From w:Wikipedia talk:How to use the GIMP
---

How can I paint a straight line (no-curved) line in the GIMP?.
 * I have found the answer, see: http://www.gimp.org/tutorials/Straight_Line/
 * Create a path, select a brush, stroke the path. Ojw 21:04, 27 Feb 2005 (UTC)
 * Or, use you can use the SHIFT key with paint, pencil, airbrush, etc. Snargle 23:10, 23 October 2005 (UTC)

Written for 2.4
How is the book written for a version of Gimp that is not even released as an unstable one? --69.36.97.248 04:37, 4 September 2006 (UTC)

Video of The Gimp.
The file is a video showing how to convert to black and white with the gimp. Where can I put it? --ogago 00:09, 22 October 2006 (UTC)

Suggestion
A chapter on "Gimp for the MS Paint user" ??

I'm sure everyone knows how to use MS Paint. And switching to Gimp should start with the "basics", like drawing straight lines, and so forth. --128.8.238.185 17:51, 10 November 2006 (UTC)

Collaboration of the month people...
I know a lot about The Gimp. Im not a professional, I have no training in PhotoShop or The Gimp, but I know how to use it after hours of playing with it.

I plan to add a few sections to the Contents page. I would ask for opinions, but this page hasn't been updated in 5 days, so I know I won't get anywhere with that...
 * Just make the additions that you want to add. Reub2000 06:44, 16 November 2006 (UTC)

Let's include other guides
There are some guides for the Gimp around, and some of them are realised under a free license, like the documentation coming with the package and many more (see ). What's the point of writing a new one from scratch?? we could include here all the tutorials that are GPLed; if they are not, we could try to ask the authors for the permission to put their guide here. Then we can start working on topics that those guides did not consider. What do you think about it?? Alessio Damato 17:11, 20 November 2006 (UTC)

 * While I would not agree with junking what is already here - a lot of people have already put a lot of work into it - if there is other content out there which would be of benefit being included, and is under the GNU FDL, then bring it in! - AmishThrasher 01:16, 22 November 2006 (UTC)

Converting to black and white
I just wrote Photoshop/Converting to black and white and I'm sure The GIMP can do most of this. Feel free to use that article any way you like. (I'm working on illustrations now.) Fg2 06:57, 26 January 2007 (UTC)

Where to start?
Hello, new to wikibooks. Would like to help out with the GIMP wikibook but I'm unsure if there's any todo list, a wishlist, anyone in charge, or any sort of organizational plan at all? Just wondering where I should start. Thanks Qwuery (talk) 22:19, 7 July 2008 (UTC)

 * There's a Todo box. You could try to write new article, or as wrote there about every tool in toolbox ( like here ), or expand existing artricles. There's a lot to do, just no one has written anything in todo list. Soeb (talk) 09:23, 8 July 2008 (UTC) Corrected the link Soeb talk|contribs 18:23, 3 May 2009 (UTC)

Manual of Style
Shouldn't we make one? There are some general conventions, and I think those could be collected in one place. Like keys, lists, naming and such. It would make it easier for people to contribute. Soeb talk|contribs 19:28, 21 January 2009 (UTC)

title: Talk:GIMP/Cover


text:
GIMP/Cover

Welcome to the Wikibook about   GIMP

GIMP's Main window

Go to Contents >>

GIMP GIMP GIMP The GIMP GIMP GIMP GIMP GIMP Rita med Gimp Gimp

title: GIMP/Cover


text:
Category:Sandwich recipes

Recipes for sandwiches.

title: Category:Sandwich recipes


text:
GIMP/Saving

This shows a typical image editing window in the GIMP (this is version 1.2, more recent versions will have a set of menus at the top of the image window)

Right-click, File, Save is used to save the image. A filetype can be selected (png, jpeg, etc.) from the dropdown list, but the default action is to use whatever extension was typed (specifying "image.jpg" causes it to save a JPEG file)

After the filename is specified, there is an additional dialog box specific to each filetype. For example, a JPEG image will ask you for the compression level, and it can be useful to adjust this until the image is a reasonable filesize.

Image formats Supported by GIMP
as of GIMP 2.2.13

Other less popular image format also supported by GIMP:

Other file formats that GIMP can only read, but not write:

GIF images
The Unisys patent has now expired and in recent versions of the GIMP you should be able to save compressed GIF images using GIMP.

If your version will not save GIF files and it is updated, you may want to update the corresponding image libraries for GIF.

title: GIMP/Saving


text:
GIMP/Editing

Image Operations
Image operations not offered in the toolbox are accessed by right-clicking on the image. Since Gimp 2.0, there is also an option to display this menu at the top of the screen. (This option is now default)

Right-click on the image to access the menus. For example, Right-click, File, Save is used to save the image in a variety of formats - for example PNG and JPEG formats are recommended for use on Wikipedia. To decrease a JPEG's filesize, adjust the Quality slider when you save. If doing this it may be helpful to tick the Show preview in Image Window checkbox, the file size will be calculated and the loss of quality can be inspected.

Often, it's useful to get info on an image you're editing. To do this, right-click on the image to bring up the menu, and then choose Image > Image Properties, or hit Alt-Enter. The first three properties are very important for printing: Pixel Dimensions, Print Size, and Resolution.

Image > Canvas size is used to adjust the size of image dimensions, but does not attempt to scale the image.

Image > Scale image is used to change the size of the image, for example to create thumbnail images.

To remove a section of image, just select it (using one of the select tools) and press Control-K ("kill", same as using Edit > Clear). This will either erase the selection to the background colour, or to transparency if the image supports it.

title: GIMP/Editing


text:
GIMP/Colours

GIMP can understand a number of different colour formats with a varying degree of support. It supports three so called modes: RGB, grayscale, and indexed.

To change the mode of the image, choose in the menu from    Image > Mode > ....

Colour Modes
GIMP supports the following color modes:

 * True Colour (RGB): This has the best support in GIMP. It is made up from 3 channels of 256 tonal variants, making a total of 16.7 million colours - 256 * 256 * 256. Supported formats: XCF, PNG, TGA, TIFF, SGI, BMP.
 * Grayscale: The grayscale mode uses one channel to display a gray image. GIMP supports grayscale well and is usable for most tools that don't specifically require colour information. Supported formats: XCF, PNG, TGA, TIFF, SGI.
 * Indexed: In this mode, the image consist of pixels picked from a palette of up to 256 colours. When you convert an image into this mode, or when you are reducing the color depth of an image, dithering options give you control over how colours are scattered. For the best quality results (especially with pictures that have gradual tonal variance) use Floyd-Steinberg dithering: it will give a grainy texture to the picture, but reduce visible banding between different colours. On the other hand, reduced or no dithering will result in smaller files when saved as GIF or PNG (or BMP with the Run-Length Encoded option set).  Supported formats: XCF, PNG, GIF, BMP.
 * Monochrome: Two colours, often black and white. GIMP sees this as an indexed image with only 2 colours. Supported formats: XCF, PNG, GIF, BMP.

Menu items for color modes:
 * Image > Mode > RGB
 * Image > Mode > Grayscale
 * Image > Mode > Indexed

Alpha Channel
Regardless of the mode, images can have an optional alpha channel for transparency. An image with an alpha channel can have transparent and semitransparent pixels, the degree of transparency of each pixel ranging from 0 to 255. Using transparency enabled by alpha channel, you can create a picture by stacking several layers on top of each other, save images for the web, or create images for 3D graphics that have holes or semi-opaque areas.

Formats that fully support alpha channel: XCF, PNG, TIFF, TGA, SGI. Formats that only support alpha channel as fully opaque or fully transparent: GIF, XPM.

Only Internet Explorer versions later than version 7 support transparency. Internet Explorer 6 and earlier do not.

Menu items for alpha channel:
 * Layer > Transparency > Add Alpha Channel
 * Layer > Transparency > Remove Alpha Channel
 * Layer > Transparency > Add to Selection

Colour Filter/Tools
Image, Mode, Decompose will split a colour image into a set of greyscale images, based on various colour models. Image, Mode, Compose does the opposite, combining greyscale images into colour ones. Striking effects may be obtained by recombining channels in a different model or order than they were decomposed in.

A number of colour adjustments can be found under Image, Colours, and colour effects under Image, Filters, Colours

title: GIMP/Colours


text:
Cookbook:Okara

Okara is a spongy, crumbly by-product of the soy milk and tofu-making process. While it is edible, it has little nutritional value and doesn't appeal to the palates of most people.

However, it can be made both more palatable and more nutritious by fermenting into tempe gembus, a form of tempeh made from okara.

title: Cookbook:Okara


text:
User talk:Timothy J Scriven

Timothy,

I love the work you've done, but I'm going to move the course and the title to 4500 or something like that. I don't like the idea of diffrentiating between Casual and Non, as if the other classes were really hard. We won't be setting classes apart like that around here.

Thanks for all of your hard work and I'm glad you put yourself down in faculty! Atrivedi

Yo- Get that negative crap out of the SLES talk page! You've designed a good course! In fact, it's so good that it shouldn't be made to sound inferior to the rest! I put it with the other courses because it deserves to be there! Buck up! :) Atrivedi, SLES

title: User talk:Timothy J Scriven


text:
Talk:Bourne Shell Scripting

Proposal to use Slash Convention
I propose renaming the pages to slash convention. (For example, Bourne Shell Scripting Modularization would become Bourne Shell Scripting/Modularization.) This will generate links from the chapters up to the main page (Bourne Shell Scripting). See WB:NP for examples. --Kernigh 00:15, 24 October 2005 (UTC)

Also, the chapter I added, Bourne Shell Scripting Interactive Conditionals and Loops, I would rename to just Bourne Shell Scripting/Loops. The long name is too confusing. --Kernigh 00:15, 24 October 2005 (UTC)

Daily shell
Hello,

Great WikiBook! ;) I'd love to see a "daily usage" or "command line" chapter. There is so much to learn about interactive bash. I would, gladly, help out with content. —Preceding unsigned comment added by Renich (discuss • contribs) 20:33, 14 September 2011 (UTC)

I'm not quite sure how to use this message feature for WIKIBOOKS, but I've found your bash book online and it is absolutely outstanding and inspiring to see your work on this. — 107.206.145.249 (discuss) 05:12, 16 September 2014 (UTC)

title: Talk:Bourne Shell Scripting


text:
Reversi

Contents

 * /Introduction/
 * /Origins/
 * Gameplay
 * /Strategy/
 * /Glossary/

Literature

 * Othello: Brief and Basic, An introduction to strategy and tactics for the game of Othello, Ted Landau, 1987
 * Othello: From Beginner to Master, Randy Fang, 2003

National Organizations
 * The Australian Othello Federation
 * The British Othello Federation
 * The Danish Othello Association
 * The French Othello Federation
 * The Othello Club Germany
 * The Italian Othello Federation
 * The Malaysia Othello Association (MOA)
 * The United States Othello Association (USOA)

title: Reversi