text:
Below is the complete transcript of Fareed Zakaria's interview with Chinese Premier Wen Jiabao. The interview was taped September 23, and portions were shown on "Fareed Zakaria GPS" on September 28.
Zakaria: We are now beginning the formal interview, just so everyone realizes.
Wen Jiabao: Before we begin, I would like to let you know that I will use the words from the bottom of my heart to answer your questions, which means that I will tell the truth to all your questions.
I always tell people that sometimes I may not tell what is on my mind, that as long as I speak out what is on my mind, the words are true.
I think you are now interviewing a statesman, and at the same time you are interviewing a statesman in his capacity as a common people.
I prefer dialogue to long-winded speeches, so you can always interrupt me and raise your questions. That would certainly make our dialogue more lively.
Zakaria: I look forward to the chance for this dialogue, and I begin by thanking you for giving us the opportunity and the honor. The first thing I have to ask you, I think is on many people's minds. What do you think of the current financial crisis affecting the United States, and does it make you think that the American model has many flaws in it that we are just recognizing now?
Wen Jiabao: I took office as the Chinese premier six years ago, and before then I was serving as the vice premier of the country. When I was the vice premier, I experienced another financial crisis but in Asia. And in wake of the Asian financial crisis, China adopted a proactive fiscal policy and decided not to devalue the RMB, the Chinese currency, but doing so we managed to overcome the difficulties. But now the problems in the United States started with the subprime crisis and later on, Fannie Mae and Freddie Mac were involved in the problems, and the Lehman Brothers was in trouble, Merrill Lynch was in trouble, the AIG was in trouble, and such large investment banking companies and insurance companies all encountered systematic problems.
And this has made me feel that this time the crisis that occurred in the United States may have an impact that will affect the whole world. Nonetheless, in face of such a crisis, we must also be aware that today's world is different from the world that people lived in back in the 1930s.
So this time we should join hands and meet the crisis together. If the financial and economic system in the United States go wrong, then the impact will be felt, not only in this country but also in China, in Asia and in the world at large.
I have noted a host of policies and measures adopted by the U.S. government to prevent an isolated crisis from becoming a systematic one, and I hope that measures and steps they have adopted will pay off. I also hope that these measures and steps will not only save some major U.S. financial companies but also help stabilize the U.S. economy and ensure that the U.S. economy will grow on a balanced course.
Zakaria: When you look at your own economy, as you know, there are many people who now say there will be a significant slowdown of the Chinese economy. There are people predicting that Chinese growth rates may slow to as much as 7 percent. Do you think that will happen? And if it does, I wonder, what do you think the consequences will be in China?
Wen Jiabao: Yes, indeed. China's economy has been growing at an annual average rate of 9.6 percent for 30 years running. This is a miracle.
Particularly between the year 2003 and 2007, China had enjoyed a double-digit growth for its economy, and at the same time the CPI grew in for less than 2 percent a year. It is fair to say that China has achieved a fairly fast and steady economic growth.
This time, China has been proactive in adopting regulatory measures. Our previous considerations were to prevent a fast-growing economy from becoming overheated and to prevent the faster soaring prices from becoming obvious inflation. But things have changed very fast, and I refer to the sub-prime crisis in the United States and the serious financial turbulences that follow the sub-prime crisis.
And as a result, we have seen a decline in external demand, and China's domestic demand can hardly be increased in a very significant manner in a short period of time. In this case, it is true that we do have this risk of a slowdown in the Chinese economy.
In this context, we must re-adjust the macroeconomic policy in China in order to adapt ourselves to external changes. What is most important is for us to strike a balance between economic growth, dampening the price rises and bringing inflation under control. And to strike a balance between job creation and dampening inflation and I know it's very, very difficult to strike a balance in all those areas.
We need to adopt a flexible and prudent macroeconomic policy to adapt to external changes in order to ensure very fast and steady economic growth and at the same time keeping inflation down.
Zakaria: Do you think you can continue to grow if the United States goes into a major recession?
Wen Jiabao: In the first half of this year, or given the statistics for the first eight months of this year, we can see that we have managed to do that.
A possible U.S. economic recession will certainly have an impact on the China economy. As we know that 10 years ago, the China-U.S. trade volume stood at only $102.6 billion U.S., while today the figures soar to $302 billion U.S., actually representing an increase of 1.5-fold. A shrinking of U.S. demand will certainly have an impact on China's export.
And the U.S. finance is closely connected with the Chinese finance. If anything goes wrong in the U.S. financial sector, we are anxious about the safety and security of Chinese capital.
That's why in the very beginning I have made it clear that the financial problems in this country not only concerns the interests of the United States but also that of China and the world at large.
Zakaria: There is another sense in which we are interdependent. China is the largest holder of U.S. Treasury bills. By some accounts, they're worth almost $1 trillion. It makes some Americans uneasy. Can you reassure them that China would never use this status as a weapon in some way?
Wen Jiabao: As I said, we believe that the U.S. real economy is still solidly based. Particularly the high-tech industries and the basic industries. Now, something has gone wrong in the virtual economy, but if this problem is properly addressed, then it is still possible to stabilize the economy in this country.
The Chinese government hopes very much that the U.S. side will be able to stabilize its economy and finance as quickly as possible, and we also hope to see sustained development in the United States as that will benefit China.
Of course, we are concerned about the safety and security of Chinese money here. But we believe that the United States is a credible country and particularly at such difficult times, China has reached out to the United States.
And actually we believe such a helping hand will help stabilize the entire global economy and finance and to prevent a major chaos from occurring in the global economic and financial system. I believe now cooperation is everything.
Zakaria: May I ask you about China's role in a broader sense? Many people see China as a superpower already, and they wonder: why is it not being more active in political resolution of issues such as the issue of Darfur or the issue of Iran and its nuclear ambitions?
There is a hope that China will play a role as a responsible stakeholder, to use Robert Zoellick's phrase when he was deputy secretary of state, and that China will be more active in managing the political problems in the world, and that so far it has not been active. How would you react to that?
Wen Jiabao: To answer this question, I need to correct some of the elements in your question first. China is NOT a superpower. Although China has a population of 1.3 billion and although in recent years China has registered fairly fast economic and social development since reform and opening up, China still has this problem of unbalanced development between different regions and between China's urban and rural areas. China remains a developing country.
We still have 800 million farmers in rural areas, and we still have dozens of million people living in poverty. As a matter of fact, over 60 million people in rural and urban areas in China still live on allowances for basic living costs in my country. And each year, we need to take care of about 23 million unemployed in urban areas and about 200 million farmers come and go to cities to find jobs in China. We need to make committed and very earnest efforts to address all these problems.
To address our own problems, we need to do a great deal. China is not a superpower. That's why we need to focus on our own development and on our efforts to improve people's lives.
Zakaria: But surely the Chinese government could pressure the Sudanese government or the Iranian government or the government in Burma to be less repressive. You have relations with all three of them.
Wen Jiabao: That brings me to your second question. Actually in the international community, China is a justice-upholding country. We never trade our principles.
Take the Darfur issue that you raised just now for example. China has always advocated that we need to adopt a dual-track approach to seek a solution to the Darfur issue. China was among the first countries sending peace-keepers to Darfur.
China was also the first country that gave assistance to Sudan and we also keep our efforts to engage the leaders in Sudan to try to seek a peaceful solution to the issue as quickly as possible.
Zakaria: Do you think it would be dangerous for the world if Iran got nuclear weapons? And what do you think the world should do to try to stop that possibility?
Wen Jiabao: We are not supportive of a nuclear rise to Iran. We believe that Iran has the right to develop a utilization of nuclear energy in a peaceful way. But such efforts should be subject to the safeguards of the [International Atomic Energy Agency], and Iran should not develop nuclear weapons. As far as the Iranian nuclear issue is concerned, China's stance is clear-cut.
We hope that through promoting the talks concerning this issue, that we will be able to encourage the Iranian authorities to give up any idea to develop nuclear weapons and accept IAEA safeguards.
Nonetheless, we hope that we can use peaceful talks to achieve the purpose, rather than resort to the willful use of force or the intimidation of force. It's like treating the relationship between two individuals. If one individual tries to corner the other, then the effect will be counterproductive. That will do nothing in helping resolve the problem. Our purpose is to resolve the problem, not to escalate tensions.
And I also have a question for you: Don't you think that the efforts made by China in resolving the Korean nuclear issue and position we have adopted in this regard have actually helped the situation on the Korean peninsula move for the better day by day? And, of course, I know that it still takes time to seek a thorough and complete solution to the Korean nuclear issue, and on that basis to help put in place the security and stability in Northeast Asia. But, what I'd like to stress is that the model that we have adopted, and the efforts we have made, prove to be right in this, in this direction.
Zakaria: Since you honored me by asking the question, I will say to you, premier, that China's efforts in North Korea have been appreciated in the United States and around the world. And of course it makes people wish that China would be active in other areas in just the same productive way that it was in North Korea because we see that it produces results.
Wen Jiabao: We have gained a lot of experience and learned lessons from years of negotiations concerning the six-party talks, and the progress made in the six-party talks also has a lot to do with the close cooperation among the six parties.
Zakaria: May I ask you about another set of possible talks? The Dalai Lama has said now it appears that he would accept China's rule in Tibet, he accepts the socialist system in Tibet, and what he asks for is cultural autonomy and a certain degree of political autonomy. The talks apparently are stuck at a lower level between the Tibetans and the Chinese government. Why don't you, given your power and your negotiating skills, take the issue yourself — and you or President Hu Jintao would negotiate directly with the Dalai Lama and solve this issue once and for all for the benefit of the Chinese people, and of course the Tibetan people who are also in China?
Wen Jiabao: Our issue with the Dalai Lama is not an ethnic, religious or cultural issue in the ordinary sense. It's a major principled issue concerning safeguarding the country's unity or allowing efforts to separate a country. And we must adopt a two-pronged approach in viewing the Dalai Lama. On one hand, it is true that the Dalai is a religious leader, and he enjoys certain influence in the Tibetan region, and particularly in regions that the inhabitants believe in Buddhism. And, on the other hand, we must also be aware that he is not an ordinary religious figure. The so-called government in exile founded by the Dalai Lama practices a theocratic rule. And the purpose of this so-called government in exile is to separate Tibet from China.
In many places all over the world, the Dalai Lama keeps preaching about the idea of a so-called autonomy in the greater Tibetan region. And actually, the so-called autonomy that he pursues is actually to use religion to intervene in politics. They want to separate the so-called greater Tibetan region from the motherland. And many people in the United States have no idea how big is the so-called greater Tibetan region, the so-called greater Tibetan region, preached by the Dalai Lama, actually covers Tibet, Sichuan, Yunnan, Qinghai and Gansu — altogether five provinces. And the area covered by the so-called greater Tibetan region accounts for a quarter of China's territory.
For decades, our policy towards the Dalai Lama remains unchanged: that is, as long as the Dalai Lama is willing to recognize that Tibet is an inalienable part of China's territory, and as long as the Dalai Lama gives up his separatist activities, we're willing to have contact and talks with him or his representatives.
Now, sincerity holds the key to producing result out of the talks. After the Tibet incident back in the 1950's, the highest leader of the central government, Mr. Deng Xiaoping, also met the representatives of the Dalai Lama.
So, I don't think there is this problem, as whether I can have contact with the Dalai Lama. The real key lies in the effectiveness of such contact and talks.
We hope that he can use real actions to show sincerity and break the deadlock.
Zakaria: What action would you like to see from the Dalai Lama that would show sincerity?
Wen Jiabao: Actually, I already made it clear that when we observe any individual, the Dalai Lama included, we should not only watch what, we should not only observe what he says, but also watch what he does.
His sincerity can be demonstrated in giving up separatist activities.
Zakaria: And then you might meet with him?
Wen Jiabao: By then, everything depends on the development of the situation. Of course, talks may continue, and in light of the progress in the talks, we may also consider raising the level of the talks.
Zakaria: Premier Wen, your country has grown, as you pointed out, 9½ percent for 30 years — fastest growth rate of any country in history. If people come to you and say to you, "What is the Chinese model of succeeding as a developing country?" What would you say? What is the key to your success? What is the model?
Wen Jiabao: It's easy to answer this question, that you may think about this thing — that about 30 years ago, why China was not able to grow as fast as it has in the following years. I think this is attributable to the reforms and opening up a policy we introduced in 1978. This holds the key to China's success. By introducing reform and opening up, we have greatly emancipated productivity in China.
We have one important thought: that socialism can also practice market economy.
Zakaria: People think that's a contradiction. You have the market economy, where the market allocates resources, and in socialism, it's all central planning. How do you make both work?
Wen Jiabao: The complete formulation of our economic policy is to give full play to the basic role of market forces in allocating resources under the macroeconomic guidance and regulation of the government.
We have one important piece of experience of the past 30 years: that is to ensure that both the visible hand and the invisible hand are given full play in regulating the market forces.
If you are familiar with the classical works of Adam Smith, you will know that there are two famous works of his. One is "The Wealth of Nations"; the other is the book on the morality and ethics. And, "The Wealth of Nations" deals more with the invisible hand that are the market forces. And the other book deals with social equity and justice. And in the other book he wrote, he stressed the importance of playing the regulatory role of the government to further distribute the wealth among the people.
If in a country, most of the wealth is concentrated in the hands of the few, then this country can hardly witness harmony and stability.
The same approach also applies to the current U.S. economy. To address the current economic and financial problems in this country, we need to apply not only the visible hand but also the invisible hand.
Zakaria: May I ask you — some Americans and Europeans, particularly human rights observers, say that China has cracked down on human rights over the last few years, that they had been hoping that the Olympics would lead to an opening of China, but that it has, there has been more repression. How would you respond to that?
Wen Jiabao: By hosting the Olympic Games, China has actually become more open. Anyone without biases will see — have seen that. In the freedom of speech and the freedom in news media coverage are guaranteed in China. The Chinese government attaches importance to, and protects, human rights. We have incorporated these lines into the Chinese constitution, and we also implement the stipulation in real earnest. I think for any government, what is most important, is to ensure that its people enjoy each and every right given to them by the constitution.
Including their right to survival, freedom and to pursue their happiness.
We don't think that we are impeccable in terms of human rights. It is true that in some places and in some areas, we do have problems of this kind or that kind. Nonetheless, we are continuing to make efforts to make improvements, and we want to further improve human rights in our country.
Zakaria: When I go to China and I'm in a hotel and I type in the words Tiananmen Square in my computer, I get a firewall, what some people call the Great Firewall of China. Can you be an advanced society if you don't have freedom of information to find out information on the Internet?
Wen Jiabao: China now has over 200 million Internet users, and the freedom of Internet in China is recognized by many, even from the west. Nonetheless, to uphold state security, China, like many countries in the world, has also imposed some proper restrictions. That is for the safety, that is for the overall safety of the country and for the freedom of the majority of the people.
I can also tell you on the Internet in China, you can have access to a lot of postings that are quite critical about the government.
It is exactly through reading these critical opinions on the Internet that we try to locate problems and further improve our work.
I don't think a system or a government should fear critical opinions or views. Only by heeding those critical views would it be possible for us to further improve our work and make further progress.
I frequently browse the Internet to learn about a situation.
Zakaria: What are your favorite sites?
Wen Jiabao: I've browsed a lot of Internet Web sites.
Zakaria: I will take advantage of your kindness and ask you a question that many people around the world wonder about. There is a very famous photograph of you at Tiananmen square in 1989. What lesson did you take from your experiences in dealing with that problem in 1989?
Wen Jiabao: I believe that while moving ahead with economic reforms, we also need to advance political reforms, as our development is comprehensive in nature, our reform should also be comprehensive.
I think the core of your question is about the development of democracy in China. I believe when it comes to the development of democracy in China, we talk about progress to be made in three areas:
No. 1: We need to gradually improve the democratic election system so that state power will truly belong to the people and state power will be used to serve the people
No. 2: We need to improve the legal system, run the country according to law, and establish the country under the rule of law and we need to view an independent and just judicial system.
No. 3: Government should be subject to oversight by the people and that will ask us, call on us to increase transparency in government affairs and particularly it is also necessary for government to accept oversight by the news media and other parties.
There is also another important aspect that when it comes to development of democracy in China, we need to take into account China's national conditions, and we need to introduce a system that suits China's special features, and we need to introduce a gradual approach.
Zakaria: People say you're studying the Japanese system because there's democracy but there's only one party that seems to win the elections. Is that the kind of model you see for China?
Wen Jiabao: I think there are multiple forms of democracy in the world. What is important is the substance of democracy.
Which means that at the end of the day, what is important about democracy is that whether such form of democracy can really represent the calling and interest of the people.
Socialism as I understand it is a system of democracy. Without democracy, there is no socialism.
And such a democracy first and foremost should serve to ensure people's right to democratic elections, oversight and decision making.
Such a democracy should also help people to fully develop themselves in an all-around way in an environment featuring freedom and equality.
And such a democracy should be based on a full-fledged legal system. Otherwise, there would be chaos. That's why we need to run the country according to law and ensure that everyone is equal under the law.
Zakaria: We've talked about elections many times. Do you think in 25 years there will be national elections in which there will be a competition, there will be perhaps two parties, that will be running for a position such as your own?
Wen Jiabao: It's hard for me to predict what will happen in 25 years time. This being said, I have this conviction — that China's democracy will continue to grow. In 20 to 30 years time, the whole Chinese society will be more democratic and fairer, and the legal system in China will further be improved. The socialism as we see it will further mature and improve.
Zakaria: Let me ask you, premier, finally a couple of questions that are personal. You've said that you've read the works of Marcus Aurelius a hundred times. Marcus Aurelius is a famous stoic philosopher. My reading of him says that one should not be involved in the self, and in any kind of pursuits that are self-interested but should be more for the community as a whole. When I go to China these days, I am struck by how much individualism there is, how much consumerism there is. Are you trying to send a signal to the Chinese people to think less about themselves and more about the community?
Wen Jiabao: It is true I did read the meditations written by Marcus Aurelius Antonio on many occasions, and I was very deeply impressed by the words that he wrote in the book — to be fact – where are those people that were great for a time? They are all gone, leaving only a story, or some even just half a story. So I draw the conclusion that only people are in the position to create history and write history.
I very much value morality, and I do believe that entrepreneurs, economists and statesmen alike should pay much more attention to morality and ethics.
In my mind, the highest standard to measure the ethics and morality is justice.
That's why in the morning when I answered the question, I said that I believe in the veins of the economist, we should see the blood of morality.
When we think about economy, we think more about the real elements concerning the company, the capital, the market, the technology, so on and so forth. And we might forget about the other sort of elements that work behind the scene, and these factors are also affected by the visible factors like conviction and morality. Only when we combine these two kinds of factors, can we put in place a full picture of the DNA of the economy.
It is true in the course of China's economic development, some companies have actually pursued their profits at the expense of morality and we will never allow such things to happen.
We will not allow economic growth at the expense of the loss of morality because such approach simply can not sustain.
That's why we advocate the corporate, occupational and social ethics.
Zakaria: Let me ask you a final question, your excellency. You must have been watching the American election. What is your reaction to the strange race and election that we are having in this country?
Wen Jiabao: The presidential election of the United States should be decided by the American people. But what I follow very closely is the relationship between China and the United States after the election.
In recent years, there has been a sound growth momentum in the growth of China-U.S. relations. And we hope, and whoever is elected as the president and whoever is sworn in into the White House, no matter which party wins the election, that he or she and the parties will continue to grow the relationship with China. And China hopes to continue to improve and grow its relationship with the United States no matter who will take office and lead the new administration in this country.
Zakaria: On that happy note, I thank you, your excellency. I'm sure your people are worried we took a little extra time. And I thank you in advance for your kindness and your frankness.


text:
Club Havana HABANO CLARO Bundles of 25 cigars
Club Havana cigars take you back to the days of classic Cuban cigars. They're handmade for world markets where they compete with the best Havana has to offer. These highly affordable and delicious feature Habano 2000 wrappers, Habano binders, and Dominican seco and ligero short-filler leaves. The tasty cigars are made in small quantities and are limited edition premium cigars. We only have a few boxes and may never have them again at these prices.
Club Havana cigars are medium-bodied and full of flavor. Once you light one of these you start to taste a peppery, slightly sweet smoke with notes of toast, cedar, coffee and spice. Along with great taste comes great construction. This is a superb cigar that doesn't come with a heavy price tag.

subset: commoncrawl


text:
- Author: Rika Fields
- Editor: David Alexander Foster
Tom Gradziel
Breeding trees takes a long time, says Tom Gradziel, a geneticist at the University of California, Davis. He knows this because he's spent the last twenty years breeding almonds and peaches for California's booming fruit and nut industry. He's breeding a variety of peaches better-suited for mechanical harvest and a variety of self-pollinating almonds. He predicted the need for these varieties years ago because as a breeder, that's how Tom has to think. "The breeder has to be in tune with the industry in terms of what problems need solving and how to pragmatically go about finding those solutions," he declares. He thinks ahead twenty years and selects traits to breed now based on what he thinks the industry needs in the future.
These days he's anticipating a need for trees that are less susceptible to January heat. He says that heat spells during the beginning stages of fruit development are already causing marginal issues such as bud failure or abnormal fruit development. His fear is that this will become more common, to the point where farmers will experience crop loss. The solution he finds most promising? Selecting for cultivars that are tolerant to a wider range of climatic conditions, ones that will not be derailed as easily by unexpected heat spells.
Tom tests cultivars on several plots under a variety of conditions before he releases them to growers. Long-term testing is an important aspect of what Tom does and is the reason why breeding takes such a long time. The process is long but it mitigates risks to growers by ensuring the trees grow well in whatever environment they're planted. There's always room for improvement, however, and Tom's greatest career accomplishment is his optimization of this process.
Building upon research conducted by Ted DeJong, a professor and pomologist at UC Davis, Tom improved the efficiency of his tree breeding program by mechanizing the pruning and flower-thinning of his trees. It allowed him to see uniform fruit on branches and allowed him to keep entire seedling blocks rather than eliminate imperfect trees. "You end up with something close to the true genetic potential," Tom proclaims, "you're seeing what the maximum genetics can produce." For his breeding program, Tom gets help from many outside sources, including the UC Cooperative Extension.
The cooperative extension system has been crucial to Tom's breeding endeavors because it has given him a large network to collaborate with. From the USDA to farm advisors, extensions specialists, nurseries, and growers themselves, Tom works with all these groups to test his trees. "We have a web of information going from the university to the growers and just as importantly from the growers and processors back to the university," Tom states. Not only does this network help him in his experiments, they give him a reality check: nurseries and growers will tell him which solutions might work and what won't pass in the industry.
Tom wants to share with all growers this insight: tree selection is like a marriage. He calls it the Anna Karenina Principle, alluding to the first line of Leo Tolstoy's famous novel: "All happy families are alike; each unhappy family is unhappy in its own way." Tom's point is that growers shouldn't choose a tree because it has one trait they really like. The tree they choose may be great for a few years but may be taken out by an especially strong gust of wind or a pathogen it's not resistant to. Instead, Tom says, growers should choose a tree that hasn't shown any flaws and will still be producing twenty years down the line.


text:
Considering the fact that the British meaning of 'sod' is demeaning, I had to stop
to look around.
Fortunately, 'sod' is the material that the house is made from!
Hugh Murray built in the 1860s for John McIntosh, as a store and as a stopping place
for miners heading to the Tuapeka goldfields.


text:
777 Super Strike
Get ready for a striking sequel! Introducing 777 Super Strike by Red Tiger, the thrilling follow-up to the fan-favourite 777 Strike.
This game is packed with Wilds that spice up your wins while Expanding Wilds take it a step further by covering the whole reel. But the real heavenly delight is the 7th Heaven – Free Spins. Level 1 starts after 3 scatters appear and provide 7 free spins. You can reach the next level, Win Spins, randomly at the end of level 1 and enjoy some guaranteed wins and an extra 7 free spins. Level 3, Wild Spins, is the grand finale, where Wilds and Expanded Wilds stay locked for epic wins. Dive straight into the Free Spins round with Feature Buy.
Will you strike it big?
243 Ways
Feb 1, 2024
The most advanced casino game engine on the market.
We are proud to use the very latest technologies and powerful software fully developed in-house to bring players the ultimate game-play experience.
We achieve the highest frame-per-second (FPS) rates even on our most technically and graphically complex games, for a seamless and immersive gaming experience.
We take pride in ensuring the compatibility of our games across a vast variety of mobile devices and operating systems, new and old, so everyone can enjoy our games.
Quality & Speed
Our flexible yet powerful RTG Core architecture allows us to innovate quickly and deliver games and casino products of the very highest technical, creative and artistic quality. It's all part of our commitment to 'the science of fun'.
Maximise Results with Our Suite of Engagement Tools
Our games are supported by the industry's most powerful marketing and engagement tools.
Flexible bonusing. Innovative jackpots. Competitive tournaments.


text:
Monday, October 23rd, 2017 by Julian Karsunky
Our latest ArtWanted! feature hits like a tidal wave! Hailing from Brazil, Thiago Lima is not only overflowing with creativity when it comes to architectural visualization, but truly dedicated to sharing his extensive knowledge through workshops and elaborate online courses. An accomplished 3D artist and much sought-after speaker and consultant, Thiago has carefully refined his teaching methods throughout his career without compromising his artistic integrity, maintaining a unique and free-spirited outlook.
Continue reading to open the floodgates for a captivating take on archviz, Thiago Lima's love for destruction and his golden rules for aspiring CG artists.
Pablo Picasso, one of the most influential artists of the 20th century, is famously quoted as saying that "every act of creation is first an act of destruction". A sentiment that Thiago Lima no doubt agrees with. After all, the Brazilian CGI artist specifically cites the VFX behind animated scenes of destruction among his biggest sources of inspiration. Driven by his own curiosity upon viewing digitally produced mayhem, Thiago tries to recreate the same sense of wonder in his work.
Take for example 'Under', Thiago's latest animated short linked above. What starts out as a conventional archviz showcase, suddenly devolves into cataclysmic destruction, as all of the carefully composed scenes are gradually flooded, until every single piece of designer furniture is fully submerged and schools of fish cavort between gracefully suspended tableware. Although catastrophic in scope, the aftermath of the flood is presented to us not as disastrous, but as calm and tranquil, organically enriching the original design of these rooms.
The calm before the storm: Still from Thiago Lima's short 'Under'.
As Thiago tells us, the progression in the finished short actually mimics the development process of 'Under': "This project was not planned as such and ended up more or less happening by accident. I initially created all of the scenes featured in the short as reference material for my new online course on Corona Renderer.
While experimenting with framing and sequencing, the idea of flooding the environments came out of nowhere. Besides my long-lived 'appetite for destruction', there's no grand scheme or well thought out concept behind it."
It took Thiago around 15 days of working in his spare time until he had all eight scenes animated and ready for rendering, with the original, unflooded versions taking him only a week to build from the ground up. The underwater scenes, however, proved more difficult, as they posed an entirely different set of challenges: "Working with water was very tricky", as there's a lot going on", Thiago says. "From glasses behind glasses with caustics, metals, volumetric lights and displacement to depth of field and trees and plants with real translucency – sometimes all in the same sequence!"
Talking software, modelling was almost exclusively done in 3ds Max, with GrowFx helping bringing trees and plants to live. Forest Pack Pro was Thiago's scattering tool of choice, while Phoenix FD was used for water effects and displacements. DOF effects and Camera Shake was added using Corona Renderer and After Effects. Lastly, final editing and music sync was done in Premiere Pro.
Submerging the scenes in 'Under' posed a new set of challenges.
Even though Thiago is happily sidetracked by a spontaneous and purely artistic endeavor such as 'Under', his main focus nowadays is on teaching and consulting jobs. Following an extended career as a graphic designer and general 3D artist, his growing desire for professional self-fulfillment lead him down a path that culminated in the founding of Thi Lima, which he describes as a "one man army company".
Through his website, Thiago aims "to revolutionize archviz online learning in Brazil, by offering comprehensive, multilingual courses that promote individual creativity yet also encompass advanced theoretical subjects such as layout composition, color theory and form". A key method of his teachings is the firm grounding of digital visions in reality: "I'm constantly trying to make my students closely observe the world around them", Thiago explains. "3D is just a tool to represent the real world and only once we understand how this world works, can we start to learn how to transpose this behavior in a 3D application".
Thinking back, Thiago recalls his journey towards professional teaching as a natural progression: "I've always been passionate about helping others and tried my best to answer every question I received about 3D and Rendering. Over time, however, the amount of people asking for my help increased to the point where it was impossible for me to offer individual support. That's when I decided to create my own, original content for teaching, in particular the kind of in-depth knowledge that's not readily available through online tutorials."
As a free sample of his lessons, we asked Thiago his advice for aspiring 3D artists. In reply to our request, he came up with the following four basic rules:
1. Do not obsess over technicalities: Discussions about which software is the best, which is the best renderer and so on are ultimately pointless. All that matters is the artist's individual ability to find efficient solutions to overcome challenges in a satisfactory manner.
2. Try to acquire as much theoretical knowledge as possible, which can be applied in any given situation and regardless of the software or renderer you are using.
3. Ego is not your amigo! Forget about how many likes you get on social media, instead focus on getting better every day.
4. Never stop challenging yourself!
'Mondo Cubico Hostel', a three-day project focused on water simulation
Following up on his first rule of efficiency, Thiago found the RebusFarm render service to be a valuable asset in optimizing his workflow: "The preliminary version of 'Under' was rendered on a single Notebook with an average of 5 to 15 minutes per frame, which took about 35 days overall. After some minor adjustments, I chose to render the final version through RebusFarm, which turned out to be an insane life saver, as I rendered the entire three minutes of animation in just one day."
Furthermore, Thiago praised the intuitive control of the RebusFarm software, that "despite no previous experience, guided me effortlessly through my first render" as well as the "quality customer support", saying: "Since our field of work is inherently prone to error, the importance of having access to such a responsive and efficient tech support can't be overstated. "
An exclusive look at Thiago's upcoming short, set at São Paulo's famous Avenida Paulista
Between teaching, consulting and his recent speaking appearances at renowned events like Renderit and 3D Symposium, Thiago is currently planning to pick up and revise a concept he developed two years ago for another animated short that got lost in the shuffle. "At this point, I can't go into detail about what's going to happen in the film itself other than that it's set on Avenida Paulista, São Paulo's most famous avenue and a very special place. All I can say is: Get ready, this is gonna be huge!"
We're excited to see what Thiago has in store for us next and can hardly wait to find out what antics he has planned for Paulista Avenue. Considering his self-proclaimed "love for destroying things", it's quite possible that not every stone at busy "Paulista" remains intact.
Follow Thiago Lima here:
How to join ArtWanted!


text:
You're here because the seashore calls you.
Breathe deep and smell the fresh salt air. The moment your feet touch the sand you are ten years old again and looking forward to spending the whole day in the surf... now it's your kids and grandchildren who live the dream because you trusted us with one of the most important decisions of your life. Can you replace hearing the roar of the ocean from your open bedroom window on a balmy summer night? Perhaps the laughter of children mixed with the gull's cry on a steamy summer afternoon? You alone have made your memories here and we are proud that we were a part of that and hope to help others build their own special memories for many years to come.
And yes, times have changed and maybe you are enjoying the slow lull of the waves as you read your latest downloaded book or perhaps you're working from your beach chair or boat because you can do it just as well here, maybe even better. With family members close by and relaxing moments to think, you find you're even more creative and productive with a renewed sense that you made the right decision and put your faith in us to make your choice a reality. WE GET IT. Whether you are busy or taking it slow, whether you own or rent your home here, we believe in the value of time well spent at the shore.
Although we've been here for over 60 years we start fresh every day. Whether long time or new, our clients and customers are never taken for granted. Managing desires is a business we take very seriously and strive to make the process of renting your beach home or second home ownership a reality for our island visitors. We realize that people come to the Jersey Cape for the same reasons we chose to live, work and play here.
Your friends and professionals at Coldwell Banker James C. Otton Real Estate, Inc.


text:
What is Malunion?
Malunion, also known as crooked healing, is the failure of a fractured bone to rejoin properly due to poor alignment of the fracture fragments. The condition results in abnormality and deformity of the bone (bent or twisted bone).
Causes of Malunion
The main causes of malunion in the elbow include:
- Imperfect alignment or positioning of the broken bones
- Improper stabilization of the fracture union during healing causing movement of the broken bones
Factors such as tobacco use, obesity and diabetes can also affect bone healing resulting in a malunion.
Symptoms of Malunion
Malunion in the elbow is characterized by:
- Rotation and/or angulation (bend) of the fractured bone
- Stiffness and difficulty flexing or extending the elbow
- Discomfort or pain in the elbow
- Swelling at the elbow
How is Malunion Diagnosed?
Malunion can be diagnosed by:
- A physical examination
- Imaging tests (X-ray, CT Scan or MRI)
What are Non-operative Options for Malunion?
Non-operative treatment options for malunion include: active exercises, splinting, passive mobilization and use of continuous passive motion machines.
What are Operative Options for Malunion?
To correct a malunion your doctor may perform a bone realignment osteotomy (correction osteotomy) and placement of bone graft.
The aim of treatment is to correct the deformity and improve function of the upper extremity. Surgery is performed under anesthesia. The bone is rebroken and the fracture fragments are realigned properly. The bone may be trimmed for proper orientation if necessary. Screws, pins or plates may be used to stabilize the fracture union as it heals. Bone graft may be placed at the site to encourage bone growth and fusion.
What Happens after Your Surgery?
After surgery, a post-operative dressing/splint is placed. Medications are prescribed for pain control. Smoking should be avoided as this can delay healing and promote malunion. You are advised not to bear weight on the arm initially and to gradually increase your activities as directed by your doctor.
Your Rehab
You may be advised to undergo physical and/or occupational therapy weeks after surgery to improve strength and function of the arm.


text:
Safe, Tasty, Nutritious Almonds We Shouldn't Take For Granted
Sometimes we need to hear about things that are working well in our food system. I'd like to describe a case where sound regulation and well-applied technology combine to protect us from a significant risk posed by a natural chemical called Aflatoxin - one of the most toxic and carcinogenic chemicals known.
Aflatoxin can contaminate a wide range of foods from maize (field corn), to peanuts, to cotton seed meal, to tree nuts (almond, walnut, pecan, pistachio), to wild collected nuts (Brazil nut), to dried peppers to various spices. It can even be in chocolate! For those that live in "The Global South" (or developing world), aflatoxin is one of the leading causes of illness and death - particularly through liver cancer.
If you live in the richer parts of the world, you may never hear about this toxin. Strict regulations, combined with a suite of technologies and testing protocols, do a very good job of protecting us from this threat. I'd like to describe them, but first I need to talk about...
The Bad Guys In This Story
This threat of contamination involves a "conspiracy" between a fungus, an insect, and the climate. Ok, its just biology, but it is still insidious. Insects, particularly caterpillars, damage crops by feeding on them. Certain species and strains in the fungus, Aspergillus, are able to infect parts of plants that are damaged by the worms.
The fungus produces the toxin as a means of excluding other microbes from that damaged site. For many crops (particularly maize,) drought or heat stress increases the susceptibility of the plant to this sort of attack.
Navel Orange Worm Larvae in a Nut In some crops (particularly tree nuts), the insect and the fungus strike a mutually beneficial pact. A caterpillar called the Navel Orange Worm actually transports the Aspergillus fungus with it when it feeds on developing fruiting structures of the nut tree. This worm has a phenomenally effective P450 enzyme that detoxifies the aflatoxin to which it is exposed so that both partners are protected in their niche by the toxin. These are formidable foes, but fortunately not insurmountable when the following technologies are deployed. |
Technology 1: Analytical Methods
A number of companies have developed various analytical tools to fit various parts of the system. Rapid, cost-effective, and robust tests are available that can be used by non-experts to exclude contaminated loads before they enter the supply at somewhere like a grain elevator.
Very sensitive and precise tests are available to check the end product to meet even the high EU standard for nuts of 2 parts per billion aflatoxin. The Gates foundation is funding development of very low cost tests to extend this life saving capability to the developing world.
Technology 2: Orchard Sanitation
There is an important "low tech" component to managing this threat. In nut orchards, the Navel Orange Worm overwinters in "mummies"- the damaged and colonized fruiting structures which tend to stay attached to the tree, unlike the healthy nuts which are shaken loose during harvest.
Mummies (dark) left from the previous season harbor the Navel Orange Worm |
It is very important for the growers to remove as many of the mummies as possible from the trees and to destroy as many as possible of those that fall to the ground. Workers walk through the orchard with long bamboo poles to knock down as many mummies as they can. In a recent study in Pistachios, it was determined that a threshold of 0.2 mummies/acre was desirable to keep worm populations low enough.
That would mean that between 99.965% to 99.977% of the nuts and mummies need to be removed by either harvest operations or subsequent sanitation.
Technologies 3 and 4: Insecticides and Mating Disruption
For the nut crops, the best strategy (in addition to doing the orchard sanitation) is to use two, well-timed insecticide sprays along with mating disruption - essentially putting out lots of sources of the Navel Orange Worm's mating hormone so that the males get completely confused and unable to find the females.
In a large scale, three year study (see graph above I made from their published data), the combination of insecticides and mating disruption provided the best control of the worms and thus greatly reduced the introduction of the fungus.
Technology 5: Biotechnology (Marker Assisted Selection)
Marker assisted selection is essentially conventional plant breeding except that the breeder knows which specific genes are being moved around. This is a side benefit of decades of investment in better and better laboratory tools for biotechnology (used in plant and medical technology). As an example, it has been used by Syngenta to develop more drought tolerant corn, and that will potentially lower aflatoxin levels.
Aspergillus infection of corn like this can be prevented with insect and drought resistance traits |
Technology 6: Biotechnology (GMO)
There is also a GMO drought tolerant corn from Monsanto that will first enter the market in 2013, and this should also help reduce aflatoxin. The more dramatic effects are seen with insect resistant corn lines (available from several companies). If the worms (European Corn Borers in this case), can't feed long enough to damage the ears of corn, then the Aspergillus can't follow and produce the toxin. This was observed quite clearly last year.
Technology 7: Biological Control
One very cool strategy developed by USDA scientists is finding strains of Aspergillus which compete well at colonizing insect damaged plant tissues, but which don't make the toxin.
These are called "atoxigenic strains", and they are introduced into the field as pellets that sporulate and allow these benign strains to find their way to the plants. Syngenta, is now offering this product as Aflaguard.
The combination of the biocontrol agent and biotech-based insect resistance proved to be a particularly effective combination for maize in the 2012 drought.
Technology 8: Fluorescence Detection
With crops like tree nuts or peanuts, there is one more step that can be taken to deal with infections that slip through the other control measures (remember there is an almost zero tolerance for this issue). Shelled nuts are carried, one-by-one, at high speed, down a conveyer belt past a source of light that has a wavelength that will produce fluorescence at another specific wavelength if Aspergillus is present on a nut. If that signal is picked up with detectors, a perfectly timed puff of air knocks that nut off the line.
This is why I always prefer to buy shelled nuts because they typically go through this process. This procedure is also commonly used for peanuts going into peanut butter and other confectionary uses.
A great deal of effort goes into minimizing risks associated with aflatoxin in our food supply. Extending these sorts of protections to the developing world is not easy, but is a much needed change.
You are welcome to comment here and/or to email me at firstname.lastname@example.com. You can also follow me on Twitter (@grapedoc).
Almonds image from HealthAliciousNess' photostream. Pistachio mummy image and Navel Orange Worm in nut image from the University of California. Aspergillus infected corn image from Iowa State University. Biocontrol image from USDA-ARS


text:
termcap(5) [minix man page]
TERMCAP(5) File Formats Manual TERMCAP(5) NAME
termcap - terminal capability data base SYNOPSIS
/etc/termcap DESCRIPTION
Termcap is a data base describing terminals, used, e.g., by vi(1) and curses(3). Terminals are described in termcap by giving a set of capabilities that they have and by describing how operations are performed. Padding requirements and initialization sequences are included in termcap. Entries in termcap consist of a number of `:'-separated fields. The first entry for each terminal gives the names that are known for the terminal, separated by `|' characters. The first name is always two characters long and is used by older systems which store the terminal type in a 16-bit word in a system-wide data base. The second name given is the most common abbreviation for the terminal, the last name given should be a long name fully identifying the terminal, and all others are understood as synonyms for the terminal name. All names but the first and last should be in lower case and contain no blanks; the last name may well contain upper case and blanks for readability. Terminal names (except for the last, verbose entry) should be chosen using the following conventions. The particular piece of hardware making up the terminal should have a root name chosen, thus "hp2621". This name should not contain hyphens. Modes that the hardware can be in or user preferences should be indicated by appending a hyphen and an indicator of the mode. Therefore, a "vt100" in 132-column mode would be "vt100-w". The following suffixes should be used where possible: Suffix Meaning Example -w Wide mode (more than 80 columns) vt100-w -am With automatic margins (usually default) vt100-am -nam Without automatic margins vt100-nam -n Number of lines on the screen aaa-60 -na No arrow keys (leave them in local) concept100-na -np Number of pages of memory concept100-4p -rv Reverse video concept100-rv CAPABILITIES
The characters in the Notes field in the table have the following meanings (more than one may apply to a capability): N indicates numeric parameter(s) P indicates that padding may be specified * indicates that padding may be based on the number of lines affected o indicates capability is obsolete "Obsolete" capabilities have no terminfo equivalents, since they were considered useless, or are subsumed by other capabilities. New soft- ware should not rely on them at all. Name Type Notes Description ae str (P) End alternate character set AL str (NP*) Add n new blank lines al str (P*) Add new blank line am bool Terminal has automatic margins as str (P) Start alternate character set bc str (o) Backspace if not ^H bl str (P) Audible signal (bell) bs bool (o) Terminal can backspace with ^H bt str (P) Back tab bw bool le (backspace) wraps from column 0 to last column CC str Terminal settable command character in prototype cd str (P*) Clear to end of display ce str (P) Clear to end of line ch str (NP) Set cursor column (horizontal position) cl str (P*) Clear screen and home cursor CM str (NP) Memory-relative cursor addressing cm str (NP) Screen-relative cursor motion co num Number of columns in a line (See BUGS section below) cr str (P) Carriage return cs str (NP) Change scrolling region (VT100) ct str (P) Clear all tab stops cv str (NP) Set cursor row (vertical position) da bool Display may be retained above the screen dB num (o) Milliseconds of bs delay needed (default 0) db bool Display may be retained below the screen DC str (NP*) Delete n characters dC num (o) Milliseconds of cr delay needed (default 0) dc str (P*) Delete character dF num (o) Milliseconds of ff delay needed (default 0) DL str (NP*) Delete n lines dl str (P*) Delete line dm str Enter delete mode dN num (o) Milliseconds of nl delay needed (default 0) DO str (NP*) Move cursor down n lines do str Down one line ds str Disable status line dT num (o) Milliseconds of horizontal tab delay needed (default 0) dV num (o) Milliseconds of vertical tab delay needed (default 0) ec str (NP) Erase n characters ed str End delete mode ei str End insert mode eo bool Can erase overstrikes with a blank EP bool (o) Even parity es bool Escape can be used on the status line ff str (P*) Hardcopy terminal page eject fs str Return from status line gn bool Generic line type (e.g. dialup, switch) hc bool Hardcopy terminal HD bool (o) Half-duplex hd str Half-line down (forward 1/2 linefeed) ho str (P) Home cursor hs bool Has extra "status line" hu str Half-line up (reverse 1/2 linefeed) hz bool Cannot print ~s (Hazeltine) i1-i3 str Terminal initialization strings (terminfo only) IC str (NP*) Insert n blank characters ic str (P*) Insert character if str Name of file containing initialization string im str Enter insert mode in bool Insert mode distinguishes nulls iP str Pathname of program for initialization (terminfo only) ip str (P*) Insert pad after character inserted is str Terminal initialization string (termcap only) it num Tabs initially every n positions K1 str Sent by keypad upper left K2 str Sent by keypad upper right K3 str Sent by keypad center K4 str Sent by keypad lower left K5 str Sent by keypad lower right k0-k9 str Sent by function keys 0-9 kA str Sent by insert-line key ka str Sent by clear-all-tabs key kb str Sent by backspace key kC str Sent by clear-screen or erase key kD str Sent by delete-character key kd str Sent by down-arrow key kE str Sent by clear-to-end-of-line key ke str Out of "keypad transmit" mode kF str Sent by scroll-forward/down key kH str Sent by home-down key kh str Sent by home key kI str Sent by insert-character or enter-insert-mode key kL str Sent by delete-line key kl str Sent by left-arrow key kM str Sent by insert key while in insert mode km bool Has a "meta" key (shift, sets parity bit) kN str Sent by next-page key kn num (o) Number of function (k0-k9) keys (default 0) ko str (o) Termcap entries for other non-function keys kP str Sent by previous-page key kR str Sent by scroll-backward/up key kr str Sent by right-arrow key kS str Sent by clear-to-end-of-screen key ks str Put terminal in "keypad transmit" mode kT str Sent by set-tab key kt str Sent by clear-tab key ku str Sent by up-arrow key l0-l9 str Labels on function keys if not "fn" LC bool (o) Lower-case only LE str (NP) Move cursor left n positions le str (P) Move cursor left one position li num Number of lines on screen or page (See BUGS section below) ll str Last line, first column lm num Lines of memory if > li (0 means varies) ma str (o) Arrow key map (used by vi version 2 only) mb str Turn on blinking attribute md str Turn on bold (extra bright) attribute me str Turn off all attributes mh str Turn on half-bright attribute mi bool Safe to move while in insert mode mk str Turn on blank attribute (characters invisible) ml str (o) Memory lock on above cursor mm str Turn on "meta mode" (8th bit) mo str Turn off "meta mode" mp str Turn on protected attribute mr str Turn on reverse-video attibute ms bool Safe to move in standout modes mu str (o) Memory unlock (turn off memory lock) nc bool (o) No correctly-working cr (Datamedia 2500, Hazeltine 2000) nd str Non-destructive space (cursor right) NL bool (o) is newline, not line feed nl str (o) Newline character if not ns bool (o) Terminal is a CRT but doesn't scroll nw str (P) Newline (behaves like cr followed by do) OP bool (o) Odd parity os bool Terminal overstrikes pb num Lowest baud where delays are required pc str Pad character (default NUL) pf str Turn off the printer pk str Program function key n to type string s (terminfo only) pl str Program function key n to execute string s (terminfo only) pO str (N) Turn on the printer for n bytes po str Turn on the printer ps str Print contents of the screen pt bool (o) Has hardware tabs (may need to be set with is) px str Program function key n to transmit string s (terminfo only) r1-r3 str Reset terminal completely to sane modes (terminfo only) rc str (P) Restore cursor to position of last sc rf str Name of file containing reset codes RI str (NP) Move cursor right n positions rp str (NP*) Repeat character c n times rs str Reset terminal completely to sane modes (termcap only) sa str (NP) Define the video attributes sc str (P) Save cursor position se str End standout mode SF str (NP*) Scroll forward n lines sf str (P) Scroll text up sg num Number of garbage chars left by so or se (default 0) so str Begin standout mode SR str (NP*) Scroll backward n lines sr str (P) Scroll text down st str Set a tab in all rows, current column ta str (P) Tab to next 8-position hardware tab stop tc str Entry of similar terminal - must be last te str String to end programs that use termcap ti str String to begin programs that use termcap ts str (N) Go to status line, column n UC bool (o) Upper-case only uc str Underscore one character and move past it ue str End underscore mode ug num Number of garbage chars left by us or ue (default 0) ul bool Underline character overstrikes UP str (NP*) Move cursor up n lines up str Upline (cursor up) us str Start underscore mode vb str Visible bell (must not move cursor) ve str Make cursor appear normal (undo vs/vi) vi str Make cursor invisible vs str Make cursor very visible vt num Virtual terminal number (not supported on all systems) wi str (N) Set current window ws num Number of columns in status line xb bool Beehive (f1=ESC, f2=^C) xn bool Newline ignored after 80 cols (Concept) xo bool Terminal uses xoff/xon (DC3/DC1) handshaking xr bool (o) Return acts like ce cr nl (Delta Data) xs bool Standout not erased by overwriting (Hewlett-Packard) xt bool Tabs ruin, magic so char (Teleray 1061) xx bool (o) Tektronix 4025 insert-line A Sample Entry The following entry, which describes the Concept-100, is among the more complex entries in the termcap file as of this writing. ca|concept100|c100|concept|c104|concept100-4p|HDS Concept-100: :al=3*E^R:am:bl=^G:cd=16*E^C:ce=16E^U:cl=2*^L:cm=Ea%+ %+ : :co#80:.cr=9^M:db:dc=16E^A:dl=3*E^B:do=^J:ei=E200:eo:im=E^P:in: :ip=16*:is=EUEfE7E5E8ElENHEKE200Eo&200Eo47E:k1=E5: :k2=E6:k3=E7:kb=^h:kd=E<:ke=Ex:kh=E?:kl=E>:kr=E=:ks=EX: :ku=E;:le=^H:li#24:mb=EC:me=EN200:mh=EE:mi:mk=EH:mp=EI: :mr=ED:nd=E=:pb#9600:rp=0.2*Er%.%+ :se=EdEe:sf=^J:so=EEED: :.ta=8 :te=Ev 200200200200200200Ep : :ti=EUEv 8pEp :ue=Eg:ul:up=E;:us=EG: :vb=Ek200200200200200200200200200200200200200200EK: :ve=Ew:vs=EW:vt#8:xn: :bs:cr=^M:dC#9:dT#8:nl=^J:ta=^I:pt: Entries may continue onto multiple lines by giving a as the last character of a line, and empty fields may be included for readability (here between the last field on a line and the first field on the next). Comments may be included on lines beginning with "#". Types of Capabilities Capabilities in termcap are of three types: Boolean capabilities, which indicate particular features that the terminal has; numeric capa- bilities, giving the size of the display or the size of other attributes; and string capabilities, which give character sequences that can be used to perform particular terminal operations. All capabilities have two-letter codes. For instance, the fact that the Concept has automatic margins (i.e., an automatic return and linefeed when the end of a line is reached) is indicated by the Boolean capability am. Hence the description of the Concept includes am. Numeric capabilities are followed by the character `#' then the value. In the example above co, which indicates the number of columns the display has, gives the value `80' for the Concept. Finally, string-valued capabilities, such as ce (clear-to-end-of-line sequence) are given by the two-letter code, an `=', then a string ending at the next following `:'. A delay in milliseconds may appear after the `=' in such a capability, which causes padding characters to be supplied by tputs after the remainder of the string is sent to provide this delay. The delay can be either a number, e.g. `20', or a number followed by an `*', i.e., `3*'. An `*' indicates that the padding required is proportional to the number of lines affected by the operation, and the amount given is the per-affected-line padding required. (In the case of insert-character, the factor is still the num- ber of lines affected; this is always 1 unless the terminal has in and the software uses it.) When an `*' is specified, it is sometimes useful to give a delay of the form `3.5' to specify a delay per line to tenths of milliseconds. (Only one decimal place is allowed.) A number of escape sequences are provided in the string-valued capabilities for easy encoding of control characters there. E maps to an ESC character, ^X maps to a control-X for any appropriate X, and the sequences f map to linefeed, return, tab, backspace, and formfeed, respectively. Finally, characters may be given as three octal digits after a , and the characters ^ and may be given as ^ and \. If it is necessary to place a : in a capability it must be escaped in octal as 72. If it is necessary to place a NUL character in a string capability it must be encoded as 200. (The routines that deal with termcap use C strings and strip the high bits of the out- put very late, so that a 200 comes out as a 00 would.) Sometimes individual capabilities must be commented out. To do this, put a period before the capability name. For example, see the first cr and ta in the example above. Preparing Descriptions We now outline how to prepare descriptions of terminals. The most effective way to prepare a terminal description is by imitating the description of a similar terminal in termcap and to build up a description gradually, using partial descriptions with vi to check that they are correct. Be aware that a very unusual terminal may expose deficiencies in the ability of the termcap file to describe it or bugs in vi. To easily test a new terminal description you can set the environment variable TERMCAP to the absolute pathname of a file containing the description you are working on and programs will look there rather than in /etc/termcap. TERMCAP can also be set to the termcap entry itself to avoid reading the file when starting up a program. To get the padding for insert-line right (if the terminal manufacturer did not document it), a severe test is to use vi to edit /etc/passwd at 9600 baud, delete roughly 16 lines from the middle of the screen, then hit the `u' key several times quickly. If the display messes up, more padding is usually needed. A similar test can be used for insert-character. Basic Capabilities The number of columns on each line of the display is given by the co numeric capability. If the display is a CRT, then the number of lines on the screen is given by the li capability. If the display wraps around to the beginning of the next line when the cursor reaches the right margin, then it should have the am capability. If the terminal can clear its screen, the code to do this is given by the cl string capability. If the terminal overstrikes (rather than clearing the position when a character is overwritten), it should have the os capa- bility. If the terminal is a printing terminal, with no soft copy unit, give it both hc and os. (os applies to storage scope terminals, such as the Tektronix 4010 series, as well as to hard copy and APL terminals.) If there is a code to move the cursor to the left edge of the current row, give this as cr. (Normally this will be carriage-return, ^M.) If there is a code to produce an audible signal (bell, beep, etc.), give this as bl. If there is a code (such as backspace) to move the cursor one position to the left, that capability should be given as le. Similarly, codes to move to the right, up, and down should be given as nd, up, and do, respectively. These local cursor motions should not alter the text they pass over; for example, you would not normally use "nd= " unless the terminal has the os capability, because the space would erase the character moved over. A very important point here is that the local cursor motions encoded in termcap have undefined behavior at the left and top edges of a CRT display. Programs should never attempt to backspace around the left edge, unless bw is given, and never attempt to go up off the top using local cursor motions. In order to scroll text up, a program goes to the bottom left corner of the screen and sends the sf (index) string. To scroll text down, a program goes to the top left corner of the screen and sends the sr (reverse index) string. The strings sf and sr have undefined behavior when not on their respective corners of the screen. Parameterized versions of the scrolling sequences are SF and SR, which have the same semantics as sf and sr except that they take one parameter and scroll that many lines. They also have undefined behavior except at the appropriate corner of the screen. The am capability tells whether the cursor sticks at the right edge of the screen when text is output there, but this does not necessarily apply to nd from the last column. Leftward local motion is defined from the left edge only when bw is given; then an le from the left edge will move to the right edge of the previous row. This is useful for drawing a box around the edge of the screen, for example. If the ter- minal has switch-selectable automatic margins, the termcap description usually assumes that this feature is on, i.e., am. If the terminal has a command that moves to the first column of the next line, that command can be given as nw (newline). It is permissible for this to clear the remainder of the current line, so if the terminal has no correctly-working CR and LF it may still be possible to craft a working nw out of one or both of them. These capabilities suffice to describe hardcopy and "glass-tty" terminals. Thus the Teletype model 33 is described as T3|tty33|33|tty|Teletype model 33: :bl=^G:co#72:cr=^M:do=^J:hc:os: and the Lear Siegler ADM-3 is described as l3|adm3|3|LSI ADM-3: :am:bl=^G:cl=^Z:co#80:cr=^M:do=^J:le=^H:li#24:sf=^J: Parameterized Strings Cursor addressing and other strings requiring parameters are described by a parameterized string capability, with printf(3)-like escapes %x in it, while other characters are passed through unchanged. For example, to address the cursor the cm capability is given, using two parameters: the row and column to move to. (Rows and columns are numbered from zero and refer to the physical screen visible to the user, not to any unseen memory. If the terminal has memory-relative cursor addressing, that can be indicated by an analogous CM capability.) The % encodings have the following meanings: %% output `%' %d output value as in printf %d %2 output value as in printf %2d %3 output value as in printf %3d %. output value as in printf %c %+x add x to value, then do %. %>xy if value > x then add y, no output %r reverse order of two parameters, no output %i increment by one, no output %n exclusive-or all parameters with 0140 (Datamedia 2500) %B BCD (16*(value/10)) + (value%10), no output %D Reverse coding (value - 2*(value%16)), no output (Delta Data) Consider the Hewlett-Packard 2645, which, to get to row 3 and column 12, needs to be sent "E&a12c03Y" padded for 6 milliseconds. Note that the order of the row and column coordinates is reversed here and that the row and column are sent as two-digit integers. Thus its cm capability is "cm=6E&%r%2c%2Y". The Microterm ACT-IV needs the current row and column sent simply encoded in binary preceded by a ^T, "cm=^T%.%.". Terminals that use "%." need to be able to backspace the cursor (le) and to move the cursor up one line on the screen (up). This is necessary because it is not always safe to transmit , ^D, and , as the system may change or discard them. (Programs using termcap must set terminal modes so that tabs are not expanded, so is safe to send. This turns out to be essential for the Ann Arbor 4080.) A final example is the Lear Siegler ADM-3a, which offsets row and column by a blank character, thus "cm=E=%+ %+ ". Row or column absolute cursor addressing can be given as single parameter capabilities ch (horizontal position absolute) and cv (vertical position absolute). Sometimes these are shorter than the more general two-parameter sequence (as with the Hewlett-Packard 2645) and can be used in preference to cm. If there are parameterized local motions (e.g., move n positions to the right) these can be given as DO, LE, RI, and UP with a single parameter indicating how many positions to move. These are primarily useful if the terminal does not have cm, such as the Tektronix 4025. Cursor Motions If the terminal has a fast way to home the cursor (to the very upper left corner of the screen), this can be given as ho. Similarly, a fast way of getting to the lower left-hand corner can be given as ll; this may involve going up with up from the home position, but a pro- gram should never do this itself (unless ll does), because it can make no assumption about the effect of moving up from the home position. Note that the home position is the same as cursor address (0,0): to the top left corner of the screen, not of memory. (Therefore, the "EH" sequence on Hewlett-Packard terminals cannot be used for ho.) Area Clears If the terminal can clear from the current position to the end of the line, leaving the cursor where it is, this should be given as ce. If the terminal can clear from the current position to the end of the display, this should be given as cd. cd must only be invoked from the first column of a line. (Therefore, it can be simulated by a request to delete a large number of lines, if a true cd is not available.) Insert/Delete Line If the terminal can open a new blank line before the line containing the cursor, this should be given as al; this must be invoked only from the first position of a line. The cursor must then appear at the left of the newly blank line. If the terminal can delete the line that the cursor is on, this should be given as dl; this must only be used from the first position on the line to be deleted. Versions of al and dl which take a single parameter and insert or delete that many lines can be given as AL and DL. If the terminal has a settable scrolling region (like the VT100), the command to set this can be described with the cs capability, which takes two parameters: the top and bottom lines of the scrolling region. The cursor position is, alas, undefined after using this command. It is possible to get the effect of insert or delete line using this command -- the sc and rc (save and restore cursor) commands are also useful. Inserting lines at the top or bottom of the screen can also be done using sr or sf on many terminals without a true insert/delete line, and is often faster even on terminals with those features. If the terminal has the ability to define a window as part of memory which all commands affect, it should be given as the parameterized string wi. The four parameters are the starting and ending lines in memory and the starting and ending columns in memory, in that order. (This terminfo capability is described for completeness. It is unlikely that any termcap-using program will support it.) If the terminal can retain display memory above the screen, then the da capability should be given; if display memory can be retained below, then db should be given. These indicate that deleting a line or scrolling may bring non-blank lines up from below or that scrolling back with sr may bring down non-blank lines. Insert/Delete Character There are two basic kinds of intelligent terminals with respect to insert/delete character that can be described using termcap. The most common insert/delete character operations affect only the characters on the current line and shift characters off the end of the line rigidly. Other terminals, such as the Concept-100 and the Perkin Elmer Owl, make a distinction between typed and untyped blanks on the screen, shifting upon an insert or delete only to an untyped blank on the screen which is either eliminated or expanded to two untyped blanks. You can determine the kind of terminal you have by clearing the screen then typing text separated by cursor motions. Type "abc def" using local cursor motions (not spaces) between the "abc" and the "def". Then position the cursor before the "abc" and put the terminal in insert mode. If typing characters causes the rest of the line to shift rigidly and characters to fall off the end, then your terminal does not distinguish between blanks and untyped positions. If the "abc" shifts over to the "def" which then move together around the end of the current line and onto the next as you insert, then you have the second type of terminal and should give the capabil- ity in, which stands for "insert null". While these are two logically separate attributes (one line vs. multi-line insert mode, and spe- cial treatment of untyped spaces), we have seen no terminals whose insert mode cannot be described with the single attribute. Termcap can describe both terminals that have an insert mode and terminals that send a simple sequence to open a blank position on the cur- rent line. Give as im the sequence to get into insert mode. Give as ei the sequence to leave insert mode. Now give as ic any sequence that needs to be sent just before each character to be inserted. Most terminals with a true insert mode will not give ic; terminals that use a sequence to open a screen position should give it here. (If your terminal has both, insert mode is usually preferable to ic. Do not give both unless the terminal actually requires both to be used in combination.) If post-insert padding is needed, give this as a number of milliseconds in ip (a string option). Any other sequence that may need to be sent after insertion of a single character can also be given in ip. If your terminal needs to be placed into an `insert mode' and needs a special code preceding each inserted character, then both im/ei and ic can be given, and both will be used. The IC capability, with one parameter n, will repeat the effects of ic n times. It is occasionally necessary to move around while in insert mode to delete characters on the same line (e.g., if there is a tab after the insertion position). If your terminal allows motion while in insert mode, you can give the capability mi to speed up inserting in this case. Omitting mi will affect only speed. Some terminals (notably Datamedia's) must not have mi because of the way their insert mode works. Finally, you can specify dc to delete a single character, DC with one parameter n to delete n characters, and delete mode by giving dm and ed to enter and exit delete mode (which is any mode the terminal needs to be placed in for dc to work). Highlighting, Underlining, and Visible Bells If your terminal has one or more kinds of display attributes, these can be represented in a number of different ways. You should choose one display form as standout mode, representing a good high-contrast, easy-on-the-eyes format for highlighting error messages and other attention getters. (If you have a choice, reverse video plus half-bright is good, or reverse video alone.) The sequences to enter and exit standout mode are given as so and se, respectively. If the code to change into or out of standout mode leaves one or even two blank spaces or garbage characters on the screen, as the TVI 912 and Teleray 1061 do, then sg should be given to tell how many characters are left. Codes to begin underlining and end underlining can be given as us and ue, respectively. Underline mode change garbage is specified by ug, similar to sg. If the terminal has a code to underline the current character and move the cursor one position to the right, such as the Microterm Mime, this can be given as uc. Other capabilities to enter various highlighting modes include mb (blinking), md (bold or extra bright), mh (dim or half-bright), mk (blanking or invisible text), mp (protected), mr (reverse video), me (turn off all attribute modes), as (enter alternate character set mode), and ae (exit alternate character set mode). Turning on any of these modes singly may or may not turn off other modes. If there is a sequence to set arbitrary combinations of mode, this should be given as sa (set attributes), taking 9 parameters. Each parameter is either 0 or 1, as the corresponding attributes is on or off. The 9 parameters are, in order: standout, underline, reverse, blink, dim, bold, blank, protect, and alternate character set. Not all modes need be supported by sa, only those for which corresponding attribute commands exist. (It is unlikely that a termcap-using program will support this capability, which is defined for compatibility with terminfo.) Terminals with the "magic cookie" glitches (sg and ug), rather than maintaining extra attribute bits for each character cell, instead deposit special "cookies", or "garbage characters", when they receive mode-setting sequences, which affect the display algorithm. Some terminals, such as the Hewlett-Packard 2621, automatically leave standout mode when they move to a new line or when the cursor is addressed. Programs using standout mode should exit standout mode on such terminals before moving the cursor or sending a newline. On terminals where this is not a problem, the ms capability should be present to say that this overhead is unnecessary. If the terminal has a way of flashing the screen to indicate an error quietly (a bell replacement), this can be given as vb; it must not move the cursor. If the cursor needs to be made more visible than normal when it is not on the bottom line (to change, for example, a non-blinking underline into an easier-to-find block or blinking underline), give this sequence as vs. If there is a way to make the cursor completely invisible, give that as vi. The capability ve, which undoes the effects of both of these modes, should also be given. If your terminal correctly displays underlined characters (with no special codes needed) even though it does not overstrike, then you should give the capability ul. If overstrikes are erasable with a blank, this should be indicated by giving eo. Keypad If the terminal has a keypad that transmits codes when the keys are pressed, this information can be given. Note that it is not possible to handle terminals where the keypad only works in local mode (this applies, for example, to the unshifted Hewlett-Packard 2621 keys). If the keypad can be set to transmit or not transmit, give these codes as ks and ke. Otherwise the keypad is assumed to always transmit. The codes sent by the left-arrow, right-arrow, up-arrow, down-arrow, and home keys can be given as kl, kr, ku, kd, and kh, respectively. If there are function keys such as f0, f1, ..., f9, the codes they send can be given as k0, k1,..., k9. If these keys have labels other than the default f0 through f9, the labels can be given as l0, l1,..., l9. The codes transmitted by certain other special keys can be given: kH (home down), kb (backspace), ka (clear all tabs), kt (clear the tab stop in this column), kC (clear screen or erase), kD (delete charac- ter), kL (delete line), kM (exit insert mode), kE (clear to end of line), kS (clear to end of screen), kI (insert character or enter insert mode), kA (insert line), kN (next page), kP (previous page), kF (scroll forward/down), kR (scroll backward/up), and kT (set a tab stop in this column). In addition, if the keypad has a 3 by 3 array of keys including the four arrow keys, then the other five keys can be given as K1, K2, K3, K4, and K5. These keys are useful when the effects of a 3 by 3 directional pad are needed. The obsolete ko capability for- merly used to describe "other" function keys has been completely supplanted by the above capabilities. The ma entry is also used to indicate arrow keys on terminals that have single-character arrow keys. It is obsolete but still in use in version 2 of vi which must be run on some minicomputers due to memory limitations. This field is redundant with kl, kr, ku, kd, and kh. It consists of groups of two characters. In each group, the first character is what an arrow key sends, and the second character is the corresponding vi command. These commands are h for kl, j for kd, k for ku, l for kr, and H for kh. For example, the Mime would have "ma=^Hh^Kj^Zk^Xl" indicating arrow keys left (^H), down (^K), up (^Z), and right (^X). (There is no home key on the Mime.) Tabs and Initialization If the terminal needs to be in a special mode when running a program that uses these capabilities, the codes to enter and exit this mode can be given as ti and te. This arises, for example, from terminals like the Concept with more than one page of memory. If the terminal has only memory-relative cursor addressing and not screen-relative cursor addressing, a screen-sized window must be fixed into the display for cursor addressing to work properly. This is also used for the Tektronix 4025, where ti sets the command character to be the one used by termcap. Other capabilities include is, an initialization string for the terminal, and if, the name of a file containing long initialization strings. These strings are expected to set the terminal into modes consistent with the rest of the termcap description. They are normally sent to the terminal by the tset program each time the user logs in. They will be printed in the following order: is; setting tabs using ct and st; and finally if. (Terminfo uses i1-i2 instead of is and runs the program iP and prints i3 after the other initializations.) A pair of sequences that does a harder reset from a totally unknown state can be analogously given as rs and if. These strings are output by the reset program, which is used when the terminal gets into a wedged state. (Terminfo uses r1-r3 instead of rs.) Commands are normally placed in rs and rf only if they produce annoying effects on the screen and are not necessary when logging in. For example, the command to set the VT100 into 80-column mode would normally be part of is, but it causes an annoying glitch of the screen and is not normally needed since the terminal is usually already in 80-column mode. If the terminal has hardware tabs, the command to advance to the next tab stop can be given as ta (usually ^I). A "backtab" command which moves leftward to the previous tab stop can be given as bt. By convention, if the terminal driver modes indicate that tab stops are being expanded by the computer rather than being sent to the terminal, programs should not use ta or bt even if they are present, since the user may not have the tab stops properly set. If the terminal has hardware tabs that are initially set every n positions when the terminal is powered up, then the numeric parameter it is given, showing the number of positions between tab stops. This is normally used by the tset command to determine whether to set the driver mode for hardware tab expansion, and whether to set the tab stops. If the terminal has tab stops that can be saved in nonvolatile memory, the termcap description can assume that they are properly set. If there are commands to set and clear tab stops, they can be given as ct (clear all tab stops) and st (set a tab stop in the current col- umn of every row). If a more complex sequence is needed to set the tabs than can be described by this, the sequence can be placed in is or if. Delays Certain capabilities control padding in the terminal driver. These are primarily needed by hardcopy terminals and are used by the tset program to set terminal driver modes appropriately. Delays embedded in the capabilities cr, sf, le, ff, and ta will cause the appropriate delay bits to be set in the terminal driver. If pb (padding baud rate) is given, these values can be ignored at baud rates below the value of pb. For 4.2BSD tset, the delays are given as numeric capabilities dC, dN, dB, dF, and dT instead. Miscellaneous If the terminal requires other than a NUL (zero) character as a pad, this can be given as pc. Only the first character of the pc string is used. If the terminal has commands to save and restore the position of the cursor, give them as sc and rc. If the terminal has an extra "status line" that is not normally used by software, this fact can be indicated. If the status line is viewed as an extra line below the bottom line, then the capability hs should be given. Special strings to go to a position in the status line and to return from the status line can be given as ts and fs. (fs must leave the cursor position in the same place that it was before ts. If necessary, the sc and rc strings can be included in ts and fs to get this effect.) The capability ts takes one parameter, which is the column number of the status line to which the cursor is to be moved. If escape sequences and other special commands such as tab work while in the status line, the flag es can be given. A string that turns off the status line (or otherwise erases its contents) should be given as ds. The status line is normally assumed to be the same width as the rest of the screen, i.e., co. If the status line is a different width (possibly because the terminal does not allow an entire line to be loaded), then its width in columns can be indicated with the numeric parameter ws. If the terminal can move up or down half a line, this can be indicated with hu (half-line up) and hd (half-line down). This is primarily useful for superscripts and subscripts on hardcopy terminals. If a hardcopy terminal can eject to the next page (form feed), give this as ff (usually ^L). If there is a command to repeat a given character a given number of times (to save time transmitting a large number of identical charac- ters), this can be indicated with the parameterized string rp. The first parameter is the character to be repeated and the second is the number of times to repeat it. (This is a terminfo feature that is unlikely to be supported by a program that uses termcap.) If the terminal has a settable command character, such as the Tektronix 4025, this can be indicated with CC. A prototype command character is chosen which is used in all capabilities. This character is given in the CC capability to identify it. The following convention is supported on some UNIX systems: The environment is to be searched for a CC variable, and if found, all occurrences of the prototype charac- ter are replaced by the character in the environment variable. This use of the CC environment variable is a very bad idea, as it conflicts with make(1). Terminal descriptions that do not represent a specific kind of known terminal, such as switch, dialup, patch, and network, should include the gn (generic) capability so that programs can complain that they do not know how to talk to the terminal. (This capability does not apply to virtual terminal descriptions for which the escape sequences are known.) If the terminal uses xoff/xon (DC3/DC1) handshaking for flow control, give xo. Padding information should still be included so that rou- tines can make better decisions about costs, but actual pad characters will not be transmitted. If the terminal has a "meta key" which acts as a shift key, setting the 8th bit of any character transmitted, then this fact can be indi- cated with km. Otherwise, software will assume that the 8th bit is parity and it will usually be cleared. If strings exist to turn this "meta mode" on and off, they can be given as mm and mo. If the terminal has more lines of memory than will fit on the screen at once, the number of lines of memory can be indicated with lm. An explicit value of 0 indicates that the number of lines is not fixed, but that there is still more memory than fits on the screen. If the terminal is one of those supported by the UNIX system virtual terminal protocol, the terminal number can be given as vt. Media copy strings which control an auxiliary printer connected to the terminal can be given as ps: print the contents of the screen; pf: turn off the printer; and po: turn on the printer. When the printer is on, all text sent to the terminal will be sent to the printer. It is undefined whether the text is also displayed on the terminal screen when the printer is on. A variation pO takes one parameter and leaves the printer on for as many characters as the value of the parameter, then turns the printer off. The parameter should not exceed 255. All text, including pf, is transparently passed to the printer while pO is in effect. Strings to program function keys can be given as pk, pl, and px. Each of these strings takes two parameters: the function key number to program (from 0 to 9) and the string to program it with. Function key numbers out of this range may program undefined keys in a terminal- dependent manner. The differences among the capabilities are that pk causes pressing the given key to be the same as the user typing the given string; pl causes the string to be executed by the terminal in local mode; and px causes the string to be transmitted to the com- puter. Unfortunately, due to lack of a definition for string parameters in termcap, only terminfo supports these capabilities. Glitches and Braindamage Hazeltine terminals, which do not allow `~' characters to be displayed, should indicate hz. The nc capability, now obsolete, formerly indicated Datamedia terminals, which echo for carriage return then ignore a following line- feed. Terminals that ignore a linefeed immediately after an am wrap, such as the Concept, should indicate xn. If ce is required to get rid of standout (instead of merely writing normal text on top of it), xs should be given. Teleray terminals, where tabs turn all characters moved over to blanks, should indicate xt (destructive tabs). This glitch is also taken to mean that it is not possible to position the cursor on top of a "magic cookie", and that to erase standout mode it is necessary to use delete and insert line. The Beehive Superbee, which is unable to correctly transmit the ESC or ^C characters, has xb, indicating that the "f1" key is used for ESC and "f2" for ^C. (Only certain Superbees have this problem, depending on the ROM.) Other specific terminal problems may be corrected by adding more capabilities of the form xx. Similar Terminals If there are two very similar terminals, one can be defined as being just like the other with certain exceptions. The string capability tc can be given with the name of the similar terminal. This capability must be last, and the combined length of the entries must not exceed 1024. The capabilities given before tc override those in the terminal type invoked by tc. A capability can be canceled by placing xx@ to the left of the tc invocation, where xx is the capability. For example, the entry hn|2621-nl:ks@:ke@:tc=2621: defines a "2621-nl" that does not have the ks or ke capabilities, hence does not turn on the function key labels when in visual mode. This is useful for different modes for a terminal, or for different user preferences. AUTHOR
William Joy Mark Horton added underlining and keypad support FILES
/etc/termcap file containing terminal descriptions /usr/etc/termcap file containing more terminal descriptions (Minix-vmd) SEE ALSO
elvis(1), more(1), termcap(3), printf(3). CAVEATS AND BUGS
Lines and columns are now stored by the kernel as well as in the termcap entry. Most programs now use the kernel information primarily; the information in this file is used only if the kernel does not have any information. Not all programs support all entries. The Minix termcap(3) does not understand everything described here, unlike the one Minix-vmd uses. 3rd Berkeley Distribution 1 November 1985 TERMCAP(5)


text:
Was Einstein Wrong?The trouble with this story is that it is directly contrary to what the academic Einstein worshipers say about him. They say that Einstein's famous relativity work was not motivated by Michelson–Morley experiment at all. Einstein himself, in his later life, denied that he even knew about the experiment.
The results of a recent experiment at CERN, the giant particle accelerator near Geneva, seem to attack one of physics' sacred cows: Albert Einstein's postulate that nothing can travel faster than the speed of light. ...
Einstein's near-mythic fame rests on his theory of relativity, which says that the speed of light in a vacuum, approximately 186,282 miles per second, is the ultimate speed limit. Nothing in the universe can travel faster. ... Physicists everywhere are scratching their heads. Could it be that another scientific revolution is at hand? Are we witnessing a paradigm shift?
Testing theories through experimentation has always been the basis for scientific progress. The philosopher Karl Popper called this the notion of falsifiability of scientific theories.
Einstein himself was motivated by an experiment that disproved a 19th century scientific belief. Back then, it was widely held that light, like sound, needed a medium in order to travel. Physicists called it the "luminiferous ether." Since the Earth revolved around the Sun and the Sun revolved around the center of the galaxy, they reasoned that the presence of ether would cause the speed of light to be different in different directions. Albert Michelson and Edward Morley set out to measure this difference. Instead they found that the speed of light was the same in every direction. In 1887, they published a paper, which then influenced Einstein.
Furthermore, the dominant academic philosophy of science rejects falsifiability in favor of Kuhnian paradigm shifts. That is where some young turk like Einstein cooks up a new theory that catches on without experimental evidence. Einstein is supposed to be a good example because he ignored the experimental evidence.
This is all nonsense, of course. The inventors of relativity were indeed motivated by the experiment that falsified previous ideas. Then Einstein just summarized their theory. The paradigm shift philosophy is garbage. This is all documented in my book.
Here is a slightly edited version of a recent Wikipedia discussion:
Colin Howson [5]: "Lorentz was justified in asserting that: ... the chief difference [is] that Einstein simply postulates what we have deduced ..."So Einstein's main contribution was to postulate what Lorentz and Poincare had proved, but we are supposed to credit Einstein anyway because of some vague kind remark that Lorentz made in his old age.
Credit is usually given to the person making the initial deduction rather than some randomly selected scholar using it as a postulate later.
Yes, that is a funny thing about relativity. There are historians and philosophers who have written entire essays on how, in Einstein's case only, it is better to credit the one who postulated what others proved.
I think the both of you are precisely missing the entire point here. ... Since you insist, the point you are missing is this: "As to the ether... though the conception of it has certain advantages, it must be admitted that if Einstein had maintained it he certainly would not have given his theory, so we are grateful to him for not having gone along old-fashioned roads." (Lorentz, 1922). Lorentz seems to know who gets the credit. Resting case. [Quote is from Hendrik Antoon Lorentz, "Problems of Modern Physics; a course of lectures delivered in the California Institute of Technology," Edited by H. Bateman, _Ginn_, 1927.]
That quote is from 1922, and by then Einstein had reversed himself. In 1920, he said, "More careful reflection teaches us, however, that the special theory of relativity does not compel us to deny ether."